TableStyleCollection Interface
A collection of table and PivotTable styles in a workbook.
Namespace: DevExpress.Spreadsheet
Assembly: DevExpress.Spreadsheet.v24.1.Core.dll
NuGet Package: DevExpress.Spreadsheet.Core
Declaration
Related API Members
The following members return TableStyleCollection objects:
Remarks
The TableStyleCollection object is a collection of styles available in the workbook to format tables and pivot tables. Use the IWorkbook.TableStyles property to access this object.
By default, this collection includes a set of built-in styles similar to Microsoft® Excel® and the None style, which specifies clear table formatting. You are not allowed to modify or remove these styles. However, you can do the following to manage the workbook’s collection of table and pivot table styles:
- Create custom styles (the TableStyleCollection.Add method).
- Duplicate existing styles (the TableStyle.Duplicate method).
- Delete existing custom styles (the TableStyleCollection.Remove method).
- Change the default table style (the TableStyleCollection.DefaultStyle property) or pivot table style (the TableStyleCollection.DefaultPivotStyle property).
Example
This example demonstrates how to create a custom style to format tables.
Add a new table style to the IWorkbook.TableStyles collection by calling the TableStyleCollection.Add method with the table style name passed as a parameter. This method returns the TableStyle object that represents the newly created table style. This object’s TableStyle.Name property is set to the specified name. Other settings are identical to the None table style (the default built-in table style that specifies no formatting for a table).
Note
Note that table styles have unique names in the collection. To ensure that there is no table style under the specified name in the collection, use the TableStyleCollection.Contains method.
- Modify elements of the created table style (TableStyle.TableStyleElements) within the TableStyle.BeginUpdate and TableStyle.EndUpdate paired methods.
' Access a table.
Dim table As Table = worksheet.Tables(0)
Dim styleName As String = "testTableStyle"
' If the style under the specified name already exists in the collection,
If workbook.TableStyles.Contains(styleName) Then
' apply this style to the table.
table.Style = workbook.TableStyles(styleName)
Else
' Add a new table style under the "testTableStyle" name to the TableStyles collection.
Dim customTableStyle_Renamed As TableStyle = workbook.TableStyles.Add("testTableStyle")
' Modify the required formatting characteristics of the table style.
' Specify the format for different table elements.
customTableStyle_Renamed.BeginUpdate()
Try
customTableStyle_Renamed.TableStyleElements(TableStyleElementType.WholeTable).Font.Color = Color.FromArgb(107, 107, 107)
' Specify formatting characteristics for the table header row.
Dim headerRowStyle As TableStyleElement = customTableStyle_Renamed.TableStyleElements(TableStyleElementType.HeaderRow)
headerRowStyle.Fill.BackgroundColor = Color.FromArgb(64, 66, 166)
headerRowStyle.Font.Color = Color.White
headerRowStyle.Font.Bold = True
' Specify formatting characteristics for the table total row.
Dim totalRowStyle As TableStyleElement = customTableStyle_Renamed.TableStyleElements(TableStyleElementType.TotalRow)
totalRowStyle.Fill.BackgroundColor = Color.FromArgb(115, 193, 211)
totalRowStyle.Font.Color = Color.White
totalRowStyle.Font.Bold = True
' Specify banded row formatting for the table.
Dim secondRowStripeStyle As TableStyleElement = customTableStyle_Renamed.TableStyleElements(TableStyleElementType.SecondRowStripe)
secondRowStripeStyle.Fill.BackgroundColor = Color.FromArgb(234, 234, 234)
secondRowStripeStyle.StripeSize = 1
Finally
customTableStyle_Renamed.EndUpdate()
End Try
' Apply the created custom style to the table.
table.Style = customTableStyle_Renamed
End If