The VisiblePosition property represents the visible position of the column in a grid and may, or may not, correspond to the Index property. A column's visible position can be regarded as the position the column will take when it is visible. Changing a column's visibility will not affect its visible position, allowing the visibility of columns to be changed without them being reordered. To retrieve the effective visible position of a column, the IndexOf method of the VisibleColumns collection can be used.
When fixing columns in a table-view layout, columns will be fixed in the order represented by their VisiblePosition properties. For example, if the FixedColumnCount property is set to 2, then the columns whose VisiblePosition properties are 0 and 1 will be fixed.
If a grid contains hidden columns, they will be ignored. For example, if the second and third columns are hidden and a fixed-column count of 2 is provided, the first and fourth columns will be fixed but their visible positions will not bemodified to reflect their new positions.
Example
All examples in this topic assume that the grid is bound to the Orders table of the Northwind database, unless stated otherwise.
The following example demonstrates how to provide a custom sort comparer that sorts addresses. The AddressComparer class (provided below) will first sort addresses which begin with numeric values by street name and then civic number. Address that do not have a civic number will be sorted alphabetically.
Gets or sets a value indicating whether cells in the column can receive focus when the parent column's ReadOnly property is set to true. (Inherited from Xceed.Wpf.DataGrid.ColumnBase)
Gets or sets the CellEditor that contains the information required to display the template that will be used to edit the content of the cells contained in the column as well as the activation gestures that activate the template. (Inherited from Xceed.Wpf.DataGrid.ColumnBase)
Gets or sets a value indicating under what conditions the editors for the cells contained in the column are displayed. (Inherited from Xceed.Wpf.DataGrid.ColumnBase)
Gets or sets the style that will be used by the cells contained in the column when their content fails the validation process. (Inherited from Xceed.Wpf.DataGrid.ColumnBase)
Gets or sets the case-sensitive field name that uniquely identifies the column in a grid's column collection. (Inherited from Xceed.Wpf.DataGrid.ColumnBase)
Gets or sets the group configuration that will be applied to the groups that are created from the values of this column. (Inherited from Xceed.Wpf.DataGrid.ColumnBase)
Gets or sets the group description that is used whenever groups are created according to the values of this column. (Inherited from Xceed.Wpf.DataGrid.ColumnBase)
Gets or sets the template that will be used by a group to display its value when the group is created according the values of the column. (Inherited from Xceed.Wpf.DataGrid.ColumnBase)
Gets a value indicating whether the content of one of the cells contained in the column failed the validation process. (Inherited from Xceed.Wpf.DataGrid.ColumnBase)
Target Platforms: Windows 11, Windows 10, Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2