/// <summary>
        /// Moves a cell view around in the collection.
        /// </summary>
        /// <param name="index">Index of the cell view to move.</param>
        /// <param name="direction">The change in position, relative to the current position.</param>
        public virtual void Move(int index, int direction)
        {
            Debug.Assert(index >= 0 && index < CellViewList.Count);
            Debug.Assert(index + direction >= 0 && index + direction < CellViewList.Count);

            IFrameCellView CellView = CellViewList[index];

            CellViewList.RemoveAt(index);
            CellViewList.Insert(index + direction, CellView);
        }
Пример #2
0
        /// <summary>
        /// Inserts a new cell view in the collection.
        /// </summary>
        /// <param name="index">Index where to insert the cell view.</param>
        /// <param name="cellView">The cell view to insert.</param>
        public virtual void Insert(int index, IFrameCellView cellView)
        {
            Debug.Assert(index >= 0 && index <= CellViewList.Count);

            CellViewList.Insert(index, cellView);

            foreach (IFrameCellView Item in CellViewList)
            {
                if (Item is IFrameContainerCellView AsContainerCellView)
                {
                    Debug.Assert(AsContainerCellView.ParentCellView == this);
                }
            }
        }