示例#1
0
        /// <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>();
 }