Class GridSortColumnHeaderCellRenderer
Implements the renderer part of a column header with sort indicator.
Inheritance
Inherited Members
Namespace: Syncfusion.Windows.Forms.Grid
Assembly: Syncfusion.Grid.Windows.dll
Syntax
public class GridSortColumnHeaderCellRenderer : GridHeaderCellRenderer, IQueryFocusInside, IGridDropDownCell, IPopupParent, IPopupItem, IDisposable
Remarks
The header cell is XP Themes enabled. It will be drawn themed if ThemesEnabled is True.
The GridDataBoundGrid registers "ColumnHeaderCell" as identifier in CellType of a cell's GridStyleInfo to associate this cell type with a cell.
The sort indicator is defined through the Tag of a cell's GridStyleInfo. The Tag will be cast to System.ComponentModel.ListSortDirection.
A renderer is created for each GridCellModelBase and GridControlBase. There can be several renderers associated with one GridSortColumnHeaderCellModel if several views display the same GridModel.
The following table lists some characteristics about the SortColumnHeader cell type:
Item | Description |
---|---|
CellType | SortColumnHeaderCell |
Renderer | GridSortColumnHeaderCellRenderer |
Model | GridSortColumnHeaderCellModel |
XP Themes Support | Yes |
Interactive | Click Only |
Floating Support | No |
Base Type | GridHeaderCellRenderer |
The cell's behavior and appearance can be customized with the following properties of the GridStyleInfo class.
PropertyName | Description |
---|---|
BaseStyle (System.String) | The base style for this style instance with default values for properties that are not initialized for this style object. (Default: String.Empty) |
Borders (GridBordersInfo) | Top, left, bottom, and right border settings. (Default: GridBordersInfo.Default) |
CellAppearance (GridCellAppearance) | When set to Flat, the header will be drawn with slightly raised edges typical for cell headers. If the grid is XP Themes enabled, the headers will be drawn with XP Themes look. If you specify Sunken or Raised, the header will be drawn with sunken or raised edges and not XP Themed. (Default: GridCellAppearance.Flat) |
CellTipText (System.String) | ToolTip text to be displayed when user hovers mouse over cell. (Default: String.Empty) |
CellType (System.String) | ColumnHeaderCell (Default: Text Box) |
CellValue (System.Object) | If empty, the standard header text will be drawn as specified with the NumberedRowHeaders and NumberedColHeaders properties in GridModel. If CellValue is not NULL, the cell value will be displayed as header text. (Default: String.Empty) |
CellValueType (System.Type) | Specifies the preferred System.Type for cell values. When you assign a value to the GridStyleInfo object, the value will be converted to this type. If the value cannot be converted, Error will contain error information. (Default: NULL) |
CultureInfo (System.Globalization.CultureInfo) | The culture information holds rules for parsing and formatting the cell's value. (Default: NULL) |
Enabled (System.Boolean) | Specifies if the header cell can be activated as current cell when the user clicks onto the header. Usually you do not want a header to be activated as current cell unless you want to have editing capabilities such as allowing user to rename header text in place. (You would have to implement a custom header cell for this.) (Default: True) |
Error (System.String) | Holds error information if a value could not be converted to the System.Type specified with CellValueType. (Default: String.Empty) |
Font (GridFontInfo) | The font for drawing text. (Default: GridFontInfo.Default) |
Format (System.String) | Gets / sets the format mask for formatting the cell value. You can specify numeric format strings, date format strings, or enumeration format strings as discussed in the section "Format Specifiers and Format Providers" of the .NET Framework Developers Guide (see ms-help://MS.VSCC/MS.MSDNVS/cpguide/html/cpconformatspecifiersformatproviders.htm) (Default: String.Empty) |
HorizontalAlignment (GridHorizontalAlignment) | Specifies horizontal alignment of text in the cell. (Default: GridHorizontalAlignment.Left) |
HotkeyPrefix (System.Drawing.Text.HotkeyPrefix) | Specifies how hot-key prefixes should be displayed. Hot-keys are indicated in text with an '&' (ampersand). When you enable hot-key prefix, the specific characters can be displayed underlined or regular. The '&' will not be displayed. (Default: HotkeyPrefix.Show) |
ImageIndex (System.Int32) | Specifies an index for an image in the ImageList of a GridStyleInfo instance. (Default: -1) |
ImageList (System.Windows.Forms.ImageList) | The ImageList that holds a collection of images. Cells can choose images with the ImageIndex property in a GridStyleInfo instance. (Default: NULL) |
Interior (BrushInfo) | Lets you specify a solid backcolor, gradient, or pattern style with both back and forecolor for a cell's background. If grid is XP Themes enabled, this color will be ignored and the header will be drawn with default XP Themes header background. (Default: SystemColors.Window) |
MergeCell (GridMergeCellDirection) | Specifies merge behavior for an individual cell when merging cells' features have been enabled in a GridModel with MergeCellsMode. (Default: GridMergeCellDirection.None) |
Tag (System.Object) | The sort indicator is defined through the Tag of a cell's GridStyleInfo. The Tag will be cast to System.ComponentModel.ListSortDirection. (Default: NULL) |
Text (System.String) | If empty, the standard header text will be drawn as specified with the NumberedRowHeaders and NumberedColHeaders properties in GridModel. If CellValue is not NULL, the cell value will be displayed as header text. (Default: String.Empty) |
TextColor (System.Drawing.Color) | Lets you specify the color for drawing the cell text. (Default: SystemColors.WindowText) |
TextMargins (GridMarginsInfo) | Holds text margins in pixels. When drawing a cell, this specifies the empty area between the text rectangle and the client rectangle of the cell without borders and cell buttons. (Default: GridMarginsInfo.Default) |
Themed (System.Boolean) | Specifies if cell should be drawn using Windows XP themes when ThemesEnabled has been set. (Default: True) |
Trimming (System.Drawing.StringTrimming) | Indicates how text is trimmed when it exceeds the edges of the cell text rectangle. (Default: StringTrimming.Character) |
VerticalAlignment (GridVerticalAlignment) | Specifies vertical alignment of text in the cell. (Default: GridVerticalAlignment.Top) |
WrapText (System.Boolean) | Specifies if text should be wrapped when it does not fit into a single line. (Default: true) |
Constructors
GridSortColumnHeaderCellRenderer(GridControlBase, GridCellModelBase)
Initializes a new instance of GridSortColumnHeaderCellRenderer object for the givenGridControlBase and GridCellModelBase.
Declaration
public GridSortColumnHeaderCellRenderer(GridControlBase grid, GridCellModelBase cellModel)
Parameters
Type | Name | Description |
---|---|---|
GridControlBase | grid | The GridControlBase that displays this cell renderer. |
GridCellModelBase | cellModel | The GridCellModelBase that holds data for this cell renderer that should be shared among views. |
Remarks
References to GridControlBase, and GridCellModelBase will be saved.
Methods
OnClick(Int32, Int32, MouseEventArgs)
Overrides when user clicked inside a cell.
Declaration
protected override void OnClick(int rowIndex, int colIndex, MouseEventArgs e)
Parameters
Type | Name | Description |
---|---|---|
System.Int32 | rowIndex | The row index. |
System.Int32 | colIndex | The column index. |
System.Windows.Forms.MouseEventArgs | e | A System.Windows.Forms.MouseEventArgs with data about the mouse event. |
Overrides
OnDrawDisplayText(Graphics, Rectangle, Int32, Int32, GridStyleInfo)
Overridden to draw the display text of header cell and draw the triangle.
Declaration
protected override void OnDrawDisplayText(Graphics g, Rectangle textRectangle, int rowIndex, int colIndex, GridStyleInfo style)
Parameters
Type | Name | Description |
---|---|---|
System.Drawing.Graphics | g | Points to the device context. |
System.Drawing.Rectangle | textRectangle | Specifies the text rectangle. It is the cell rectangle without buttons, borders, or text margins. |
System.Int32 | rowIndex | Specifies the row id. |
System.Int32 | colIndex | Specifies the column id. |
GridStyleInfo | style | A reference to the style object of the cell. |