public virtual MemoTableColumn InsertColumn(int index, IEnumerable <MemoTableCell> cells) { Contract.Requires(cells.Count() == _rowCount); var cellsEnum = cells.GetEnumerator(); foreach (var row in _rows) { cellsEnum.MoveNext(); row.InsertCell(index, cellsEnum.Current); } cellsEnum.Dispose(); for (int i = index, len = _columns.Count; i < len; ++i) { var col = _columns[i]; ++col.ColumnIndex; } var ret = new MemoTableColumn(this, index); _columns.Insert(index, ret); ++_columnCount; OnPropertyAdded(this, "Columns", ret, index); return(ret); }
public virtual void RemoveColumn(MemoTableColumn column) { Contract.Requires(column != null); var index = _columns.IndexOf(column); if (index > -1) { RemoveColumnAt(index); } }
public virtual MemoTableColumn AddColumn() { foreach (var row in _rows) { row.AddCell(); } var ret = new MemoTableColumn(this, _columnCount); _columns.Add(ret); ++_columnCount; OnPropertyAdded(this, "Columns", ret, _columnCount - 1); return(ret); }
public virtual MemoTableColumn InsertColumn(int index) { foreach (var row in _rows) { row.InsertCell(index); } for (int i = index, len = _columns.Count; i < len; ++i) { var col = _columns[i]; ++col.ColumnIndex; } var ret = new MemoTableColumn(this, index); _columns.Insert(index, ret); ++_columnCount; OnPropertyAdded(this, "Columns", ret, index); return(ret); }