System.Data.DataColumnCollection.MoveTo C# (CSharp) Method

MoveTo() private method

private MoveTo ( DataColumn column, int newPosition ) : void
column DataColumn
newPosition int
return void
        internal void MoveTo(DataColumn column, int newPosition)
        {
            if (0 > newPosition || newPosition > Count - 1)
            {
                throw ExceptionBuilder.InvalidOrdinal("ordinal", newPosition);
            }

            if (column.ImplementsIChangeTracking)
            {
                RemoveColumnsImplementingIChangeTrackingList(column);
            }

            _list.Remove(column);
            _list.Insert(newPosition, column);
            int count = _list.Count;
            for (int i = 0; i < count; i++)
            {
                ((DataColumn)_list[i]).SetOrdinalInternal(i);
            }

            CheckIChangeTracking(column);
            OnCollectionChanged(new CollectionChangeEventArgs(CollectionChangeAction.Refresh, column));
        }