Export (0) Print
Expand All

GridColumnStylesCollection.Add Method

Adds a column style to the collection.

[Visual Basic]
Public Overridable Function Add( _
   ByVal column As DataGridColumnStyle _
) As Integer
[C#]
public virtual int Add(
 DataGridColumnStyle column
);
[C++]
public: virtual int Add(
 DataGridColumnStyle* column
);
[JScript]
public function Add(
   column : DataGridColumnStyle
) : int;

Parameters

column
The DataGridColumnStyle to add.

Return Value

The index of the new DataGridColumnStyle object.

Example

[Visual Basic, C#, C++] The following example creates several DataGridColumnStyle objects and adds each to the GridColumnStylesCollection of two DataGridTableStyle objects.

[Visual Basic] 
Private Sub AddCustomDataTableStyle()
   Dim ts1 As New DataGridTableStyle()
   ts1.MappingName = "Customers"
   ' Set other properties.
   ts1.AlternatingBackColor = Color.LightGray
   ' Add a GridColumnStyle and set its MappingName 
   ' to the name of a DataColumn in the DataTable. 
   ' Set the HeaderText and Width properties. 
     
   Dim boolCol As New DataGridBoolColumn()
   boolCol.MappingName = "Current"
   boolCol.HeaderText = "IsCurrent Customer"
   boolCol.Width = 150
   ts1.GridColumnStyles.Add(boolCol)
     
   ' Add a second column style.
   Dim TextCol As New DataGridTextBoxColumn()
   TextCol.MappingName = "custName"
   TextCol.HeaderText = "Customer Name"
   TextCol.Width = 250
   ts1.GridColumnStyles.Add(TextCol)
     
   ' Create the second table style with columns.
   Dim ts2 As New DataGridTableStyle()
   ts2.MappingName = "Orders"
     
   ' Set other properties.
   ts2.AlternatingBackColor = Color.LightBlue
     
   ' Create new ColumnStyle objects.
   Dim cOrderDate As New DataGridTextBoxColumn()
   cOrderDate.MappingName = "OrderDate"
   cOrderDate.HeaderText = "Order Date"
   cOrderDate.Width = 100
   ts2.GridColumnStyles.Add(cOrderDate)

   ' Use a PropertyDescriptor to create a formatted
   ' column. First get the PropertyDescriptorCollection
   ' for the data source and data member. 
   Dim pcol As PropertyDescriptorCollection = _
   Me.BindingContext(myDataSet, "Customers.custToOrders"). _
   GetItemProperties()

   ' Create a formatted column using a PropertyDescriptor.
   ' The formatting character "c" specifies a currency format. */     
     
   Dim csOrderAmount As _
   New DataGridTextBoxColumn(pcol("OrderAmount"), "c", True)
   csOrderAmount.MappingName = "OrderAmount"
   csOrderAmount.HeaderText = "Total"
   csOrderAmount.Width = 100
   ts2.GridColumnStyles.Add(csOrderAmount)
     
   ' Add the DataGridTableStyle instances to 
   ' the GridTableStylesCollection. 
   myDataGrid.TableStyles.Add(ts1)
   myDataGrid.TableStyles.Add(ts2)
End Sub 'AddCustomDataTableStyle

[C#] 
private void AddCustomDataTableStyle(){
   DataGridTableStyle ts1 = new DataGridTableStyle();
   ts1.MappingName = "Customers";
   // Set other properties.
   ts1.AlternatingBackColor = Color.LightGray;

   /* Add a GridColumnStyle and set its MappingName 
   to the name of a DataColumn in the DataTable. 
   Set the HeaderText and Width properties. */
   
   DataGridColumnStyle boolCol = new DataGridBoolColumn();
   boolCol.MappingName = "Current";
   boolCol.HeaderText = "IsCurrent Customer";
   boolCol.Width = 150;
   ts1.GridColumnStyles.Add(boolCol);
   
   // Add a second column style.
   DataGridColumnStyle TextCol = new DataGridTextBoxColumn();
   TextCol.MappingName = "custName";
   TextCol.HeaderText = "Customer Name";
   TextCol.Width = 250;
   ts1.GridColumnStyles.Add(TextCol);

   // Create the second table style with columns.
   DataGridTableStyle ts2 = new DataGridTableStyle();
   ts2.MappingName = "Orders";

   // Set other properties.
   ts2.AlternatingBackColor = Color.LightBlue;
   
   // Create new ColumnStyle objects.
   DataGridColumnStyle cOrderDate = 
   new DataGridTextBoxColumn();
   cOrderDate.MappingName = "OrderDate";
   cOrderDate.HeaderText = "Order Date";
   cOrderDate.Width = 100;
   ts2.GridColumnStyles.Add(cOrderDate);

   /*Use a PropertyDescriptor to create a formatted
   column. First get the PropertyDescriptorCollection
   for the data source and data member. */
   PropertyDescriptorCollection pcol = this.BindingContext
   [myDataSet, "Customers.custToOrders"].GetItemProperties();
 
   /* Create a formatted column using a PropertyDescriptor.
   The formatting character "c" specifies a currency format. */     
   DataGridColumnStyle csOrderAmount = 
   new DataGridTextBoxColumn(pcol["OrderAmount"], "c", true);
   csOrderAmount.MappingName = "OrderAmount";
   csOrderAmount.HeaderText = "Total";
   csOrderAmount.Width = 100;
   ts2.GridColumnStyles.Add(csOrderAmount);

   /* Add the DataGridTableStyle instances to 
   the GridTableStylesCollection. */
   myDataGrid.TableStyles.Add(ts1);
   myDataGrid.TableStyles.Add(ts2);
}

[C++] 
private:
    void AddCustomDataTableStyle() {
        DataGridTableStyle* ts1 = new DataGridTableStyle();
        ts1->MappingName = S"Customers";
        // Set other properties.
        ts1->AlternatingBackColor = Color::LightGray;

        /* Add a GridColumnStyle and set its MappingName
        to the name of a DataColumn in the DataTable.
        Set the HeaderText and Width properties. */

        DataGridColumnStyle* boolCol = new DataGridBoolColumn();
        boolCol->MappingName = S"Current";
        boolCol->HeaderText = S"IsCurrent Customer";
        boolCol->Width = 150;
        ts1->GridColumnStyles->Add(boolCol);

        // Add a second column style.
        DataGridColumnStyle* TextCol = new DataGridTextBoxColumn();
        TextCol->MappingName = S"custName";
        TextCol->HeaderText = S"Customer Name";
        TextCol->Width = 250;
        ts1->GridColumnStyles->Add(TextCol);

        // Create the second table style with columns.
        DataGridTableStyle* ts2 = new DataGridTableStyle();
        ts2->MappingName = S"Orders";

        // Set other properties.
        ts2->AlternatingBackColor = Color::LightBlue;

        // Create new ColumnStyle objects.
        DataGridColumnStyle* cOrderDate = new DataGridTextBoxColumn();
        cOrderDate->MappingName = S"OrderDate";
        cOrderDate->HeaderText = S"Order Date";
        cOrderDate->Width = 100;
        ts2->GridColumnStyles->Add(cOrderDate);

        /*Use a PropertyDescriptor to create a formatted
        column. First get the PropertyDescriptorCollection
        for the data source and data member. */
        PropertyDescriptorCollection* pcol = this->BindingContext->get_Item
            (myDataSet, S"Customers::custToOrders")->GetItemProperties();

        /* Create a formatted column using a PropertyDescriptor.
        The formatting character S"c" specifies a currency format. */
        DataGridColumnStyle* csOrderAmount = 
            new DataGridTextBoxColumn(pcol->Item[S"OrderAmount"], S"c", true);
        csOrderAmount->MappingName = S"OrderAmount";
        csOrderAmount->HeaderText = S"Total";
        csOrderAmount->Width = 100;
        ts2->GridColumnStyles->Add(csOrderAmount);

        /* Add the DataGridTableStyle instances to
        the GridTableStylesCollection. */
        myDataGrid->TableStyles->Add(ts1);
        myDataGrid->TableStyles->Add(ts2);
    }

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework

See Also

GridColumnStylesCollection Class | GridColumnStylesCollection Members | System.Windows.Forms Namespace

Show:
© 2015 Microsoft