This documentation is archived and is not being maintained.

GridTableStylesCollection Class

Represents a collection of DataGridTableStyle objects in the DataGrid control.


Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)

public class GridTableStylesCollection : BaseCollection, 
	IList, ICollection, IEnumerable

The GridTableStylesCollection type exposes the following members.

Public propertyCountGets the total number of elements in the collection. (Inherited from BaseCollection.)
Public propertyIsReadOnlyGets a value indicating whether the collection is read-only. (Inherited from BaseCollection.)
Public propertyIsSynchronizedGets a value indicating whether access to the ICollection is synchronized. (Inherited from BaseCollection.)
Public propertyItem[Int32]Gets the DataGridTableStyle specified by index.
Public propertyItem[String]Gets the DataGridTableStyle with the specified name.
Protected propertyListGets the underlying list. (Overrides BaseCollection.List.)
Public propertySyncRootGets an object that can be used to synchronize access to the BaseCollection. (Inherited from BaseCollection.)

Public methodAddAdds a DataGridTableStyle to this collection.
Public methodAddRangeAdds an array of table styles to the collection.
Public methodClearClears the collection.
Public methodContains(DataGridTableStyle)Gets a value indicating whether the GridTableStylesCollection contains the specified DataGridTableStyle.
Public methodContains(String)Gets a value indicating whether the GridTableStylesCollection contains the DataGridTableStyle specified by name.
Public methodCopyToCopies all the elements of the current one-dimensional Array to the specified one-dimensional Array starting at the specified destination Array index. (Inherited from BaseCollection.)
Public methodCreateObjRefCreates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object. (Inherited from MarshalByRefObject.)
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetEnumeratorGets the object that enables iterating through the members of the collection. (Inherited from BaseCollection.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetLifetimeServiceRetrieves the current lifetime service object that controls the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodInitializeLifetimeServiceObtains a lifetime service object to control the lifetime policy for this instance. (Inherited from MarshalByRefObject.)
Protected methodMemberwiseClone()Creates a shallow copy of the current Object. (Inherited from Object.)
Protected methodMemberwiseClone(Boolean)Creates a shallow copy of the current MarshalByRefObject object. (Inherited from MarshalByRefObject.)
Protected methodOnCollectionChangedRaises the CollectionChanged event.
Public methodRemoveRemoves the specified DataGridTableStyle.
Public methodRemoveAtRemoves a DataGridTableStyle at the specified index.
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)

Public eventCollectionChangedOccurs when the collection has changed.

Public Extension MethodAsParallelEnables parallelization of a query. (Defined by ParallelEnumerable.)
Public Extension MethodAsQueryableConverts an IEnumerable to an IQueryable. (Defined by Queryable.)
Public Extension MethodCast<TResult>Casts the elements of an IEnumerable to the specified type. (Defined by Enumerable.)
Public Extension MethodOfType<TResult>Filters the elements of an IEnumerable based on a specified type. (Defined by Enumerable.)

Explicit interface implemetationPrivate methodICollection.CopyToInfrastructure. Copies the collection to a compatible one-dimensional Array, starting at the specified index of the target array.
Explicit interface implemetationPrivate propertyICollection.CountInfrastructure. Gets the number of items in the collection.
Explicit interface implemetationPrivate propertyICollection.IsSynchronizedInfrastructure. Gets a value indicating whether access to the GridTableStylesCollection is synchronized (thread safe).
Explicit interface implemetationPrivate propertyICollection.SyncRootInfrastructure. Gets an object that can be used to synchronize access to the collection.
Explicit interface implemetationPrivate methodIEnumerable.GetEnumeratorInfrastructure. Returns an enumerator for the collection.
Explicit interface implemetationPrivate methodIList.AddInfrastructure. Adds a DataGridTableStyle to this collection.
Explicit interface implemetationPrivate methodIList.ClearInfrastructure. Clears the collection.
Explicit interface implemetationPrivate methodIList.ContainsInfrastructure. Determines whether an element is in the collection.
Explicit interface implemetationPrivate methodIList.IndexOfInfrastructure. Returns the zero-based index of the first occurrence of the specified object in the collection.
Explicit interface implemetationPrivate methodIList.InsertInfrastructure. Implements the Insert method. Always throws NotSupportedException.
Explicit interface implemetationPrivate propertyIList.IsFixedSizeInfrastructure. Gets a value indicating whether the collection has a fixed size.
Explicit interface implemetationPrivate propertyIList.IsReadOnlyInfrastructure. Gets a value indicating whether the collection is read-only.
Explicit interface implemetationPrivate propertyIList.ItemInfrastructure. Gets or sets the element at the specified index.
Explicit interface implemetationPrivate methodIList.RemoveInfrastructure. Removes the specified DataGridTableStyle.
Explicit interface implemetationPrivate methodIList.RemoveAtInfrastructure. Removes the DataGridColumnStyle with the specified index from the collection.

The GridTableStylesCollection contains DataGridTableStyle objects that allows the DataGrid control to display a customized grid style for each DataTable in a DataSet.

On the DataGrid control, the TableStyles property returns the GridTableStylesCollection.

By default, the GridTableStylesCollection does not contain any DataGridTableStyle objects. Instead, the DataGrid displays each table using default settings for color, width, and formatting. All columns of each table are displayed. When a DataGridTableStyle is added to the collection, the DataGrid uses the MappingName to determine which object supplies the data for the grid. For example, if the data source is a DataSet that contains three DataTable objects, the MappingName must match the TableName of one of the objects. If the MappingName does not match any of the TableName values, the default settings will be used to display data for each table, and the DataGridTableStyle settings will be ignored.

Caution noteCaution

Always create DataGridColumnStyle objects and add them to the GridColumnStylesCollection before adding DataGridTableStyle objects to the GridTableStylesCollection. When you add an empty DataGridTableStyle with a valid MappingName value to the collection, DataGridColumnStyle objects are automatically generated for you. Consequently, an exception will be thrown if you try to add new DataGridColumnStyle objects with duplicate MappingName values to the GridColumnStylesCollection. Alternatively, clear the GridColumnStylesCollection using the Clear method.

The following code example creates two DataGridTableStyle objects and adds each to the GridTableStylesCollection returned by the TableStyles property of a DataGrid control.

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;

   // Add a second column style.
   DataGridColumnStyle TextCol = new DataGridTextBoxColumn();
   TextCol.MappingName = "custName";
   TextCol.HeaderText = "Customer Name";
   TextCol.Width = 250;

   // 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;

   /*Use a PropertyDescriptor to create a formatted
   column. First get the PropertyDescriptorCollection
   for the data source and data member. */
   System.ComponentModel.PropertyDescriptorCollection pcol = 
      this.BindingContext[myDataSet, "Customers.custToOrders"]

   /* 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;

   /* Add the DataGridTableStyle instances to 
   the GridTableStylesCollection. */

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.