コード例 #1
0
 public DataBoundObjectCollection(DataTable dataTable)
 {
     this._dataTable   = dataTable;
     this._rowsWrapper = new ReadOnlyDataRowCollectionWrapper(this._dataTable.Rows);
     PropertyDescriptor[] properties = new PropertyDescriptor[dataTable.Columns.Count];
     for (int index = 0; index < dataTable.Columns.Count; index++)
     {
         DataColumn column = dataTable.Columns[index];
         properties[index] = new ColumnPropertyDescriptor(
             column.ColumnName,
             index,
             !column.AllowDBNull || !column.DataType.IsValueType ? column.DataType : typeof(Nullable <>).MakeGenericType(column.DataType)
             );
     }
     this.Properties  = new PropertyDescriptorCollection(properties, true);
     this._rowIndices = new Dictionary <DataRow, int>(dataTable.Rows.Count);
     foreach (DataRow row in dataTable.Rows)
     {
         this.Add(new DataBoundObject(this, row.ItemArray));
         this._rowIndices.Add(row, this._rowIndices.Count);
     }
     this.CustomTypeDescriptor      = new DataBoundTypeDescriptor(this.Properties);
     this._dataTable.RowChanged    += this.DataTable_RowChanged;
     this._dataTable.TableCleared  += this.DataTable_TableCleared;
     this._dataTable.RowDeleted    += this.DataTable_RowDeleted;
     this._dataTable.ColumnChanged += this.DataTable_ColumnChanged;
 }
コード例 #2
0
        public TwoDARowTypeDescriptor(DataRow row)
        {
            if (row == null)
            {
                throw new ArgumentNullException("row");
            }

            this.row = row;

            doc = (TwoDADocument)row.Table.ExtendedProperties[typeof(TwoDADocument)];

            var properties = new List <PropertyDescriptor>();

            foreach (DataColumn column in row.Table.Columns)
            {
                TwoDASchema.Column schemaColumn = null;
                if (doc.Schema != null)
                {
                    schemaColumn = doc.Schema.Columns.FirstOrDefault(sc => sc.Name == column.ColumnName);
                }

                var property = new ColumnPropertyDescriptor(column, schemaColumn);
                properties.Add(property);
            }

            this.properties = new PropertyDescriptorCollection(properties.ToArray(), true);
        }
コード例 #3
0
ファイル: ViewColumn.cs プロジェクト: lgatto/proteowizard
 public ViewColumn(IViewContext viewContext, ColumnPropertyDescriptor columnPropertyDescriptor, DataGridViewCell cellTemplate) : base(cellTemplate)
 {
     ViewContext = viewContext;
     ColumnPropertyDescriptor = columnPropertyDescriptor;
     SortMode = DataGridViewColumnSortMode.Automatic;
     if (columnPropertyDescriptor != null)
     {
         HeaderText = columnPropertyDescriptor.DisplayName;
         DataPropertyName = columnPropertyDescriptor.Name;
         Name = columnPropertyDescriptor.Name;
     }
 }
コード例 #4
0
 public ViewColumn(IViewContext viewContext, ColumnPropertyDescriptor columnPropertyDescriptor, DataGridViewCell cellTemplate) : base(cellTemplate)
 {
     ViewContext = viewContext;
     ColumnPropertyDescriptor = columnPropertyDescriptor;
     SortMode = DataGridViewColumnSortMode.Automatic;
     if (columnPropertyDescriptor != null)
     {
         HeaderText       = columnPropertyDescriptor.DisplayName;
         DataPropertyName = columnPropertyDescriptor.Name;
         Name             = columnPropertyDescriptor.Name;
     }
 }
コード例 #5
0
 public ViewColumn(IViewContext viewContext, ColumnPropertyDescriptor columnPropertyDescriptor)
     : this(viewContext, columnPropertyDescriptor, new ViewCell())
 {
 }
コード例 #6
0
 public ViewColumn(IViewContext viewContext, ColumnPropertyDescriptor columnPropertyDescriptor) : this(viewContext, columnPropertyDescriptor, new ViewCell())
 {
 }