/// <summary> /// 创建一个 <see cref="Wunion.DataAdapter.Kernel.DataCollection.SpeedDataRow"/> 对象的实例。 /// </summary> /// <param name="table">该行所属的 <see cref="Wunion.DataAdapter.Kernel.DataCollection.SpeedDataTable"/> 表对象。</param> public SpeedDataRow(SpeedDataTable table) { DataCells = new List <DataCell>(); CellAddressHashTable = new System.Collections.Hashtable(); Table = table; // 以下代码为防止错误。 foreach (SpeedDataColumn Column in Table.Columns) { Add(Column, Column.DefaultValue); } }
/// <summary> /// 当某个列被从集合中删除时要进行的处理。 /// </summary> /// <param name="sender">>触发事件的表。</param> /// <param name="Index">被删除的列索引。</param> private void DataColumns_DataColumnRemoved(SpeedDataTable sender, int Index) { if (this.Count < 1) { return; } // 所有行的该列单元格都要随之删除,否则列与单元格将会错位。 foreach (SpeedDataRow Row in this) { Row.RemoveCell(Index); } }
/// <summary> /// 当在数据列集合中添加一个新列时要进行的处理。 /// </summary> /// <param name="sender">触发事件的表。</param> /// <param name="Column">被添加的数据列对象。</param> private void DataColumns_DataColumnAdded(SpeedDataTable sender, SpeedDataColumn Column) { if (this.Count < 1) { return; } // 当列被加入时,所有行的该列索引处都应该插入一个单元格。否则单元格与列将会错位。 foreach (SpeedDataRow Row in this) { Row.CreateNewCell(Column); Row[Column.Index] = Column.DefaultValue; } }
/// <summary> /// 创建一个 <see cref="Wunion.DataAdapter.Kernel.DataCollection.SpeedDataColumnCollection"/> 的对象实例。 /// </summary> public SpeedDataColumnCollection(SpeedDataTable Owner) : base() { _Table = Owner; ColumnsHashTable = new System.Collections.Hashtable(); Items = new List <SpeedDataColumn>(); }