Xceed DataGrid for WPF v7.2 Documentation
VisiblePosition Property (ColumnBase)
Example 


Xceed.Wpf.DataGrid Assembly > Xceed.Wpf.DataGrid Namespace > ColumnBase Class : VisiblePosition Property
Gets or sets the visible position of the column.
Syntax
'Declaration
 
Public Property VisiblePosition As Integer
'Usage
 
Dim instance As ColumnBase

Dim value As Integer

 

instance.VisiblePosition = value

 

value = instance.VisiblePosition
public int VisiblePosition {get; set;}

Property Value

A zero-based value representing the visible position of the column. By default, strong>int.MaxValue.
Remarks

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 be modified to reflect their new positions.

Note that if a column is contained under a parent column, it may not be possible to move it to the desired visible position if that position is not possible under the parent column.

Example
All examples in this topic assume that the grid is bound to the Orders or Employees table of the Northwind database, unless stated otherwise.
The following example demonstrates how to fix the ShipCountry and ShipCity columns.The following example demonstrates how to set routed view properties on detail configurations to change the width of their detail indicators as well as to fix columns and remove the fixed-column splitter.
<Grid xmlns:xcdg="http://schemas.xceed.com/wpf/xaml/datagrid"> 

  <Grid.Resources> 

    <xcdg:DataGridCollectionViewSource x:Key="cvs_orders" 

                                    Source="{Binding Source={x:Static Application.Current}, 

                                                      Path=Orders}"/> 

  </Grid.Resources> 

   <xcdg:DataGridControl x:Name="OrdersGrid" 

                         ItemsSource="{Binding Source={StaticResource cvs_orders}}"> 

 

      <xcdg:DataGridControl.Columns> 

         <xcdg:Column FieldName="ShipCountry" VisiblePosition="0"/> 

         <xcdg:Column FieldName="ShipCity" VisiblePosition="1"/> 

      </xcdg:DataGridControl.Columns> 

      <xcdg:DataGridControl.View> 

 

        <xcdg:TableView FixedColumnCount="2"/> 

      </xcdg:DataGridControl.View> 

   </xcdg:DataGridControl> 

</Grid>
<Grid xmlns:xcdg="http://schemas.xceed.com/wpf/xaml/datagrid" 

      xmlns:local="clr-namespace:Xceed.Wpf.Documentation"> 

  <Grid.Resources> 

     <xcdg:DataGridCollectionViewSource x:Key="cvs_employees" 

                                        Source="{Binding Source={x:Static Application.Current}, 

                                                    Path=Employees}" /> 

  </Grid.Resources> 

  <xcdg:DataGridControl x:Name="EmployeesGrid" 

                      ItemsSource="{Binding Source={StaticResource cvs_employees}}" 

                      AutoCreateDetailConfigurations="True"> 

     <xcdg:DataGridControl.Columns> 

        <xcdg:Column FieldName="Photo" 

                     Visible="False" /> 

     </xcdg:DataGridControl.Columns> 

     <xcdg:DataGridControl.DetailConfigurations> 

 

        <xcdg:DetailConfiguration RelationName="Employee_Orders" 

                                  Title="Employee Orders" 

                                  xcdg:TableView.DetailIndicatorWidth="50" 

                                  xcdg:TableView.FixedColumnCount="2"> 

           <xcdg:DetailConfiguration.Columns> 

              <xcdg:Column FieldName="EmployeeID" 

                           Visible="False" /> 

           </xcdg:DetailConfiguration.Columns> 

           <xcdg:DetailConfiguration.DetailConfigurations> 

              <xcdg:DetailConfiguration RelationName="Order_OrderDetails" 

                                        Title="Order Details" 

                                        xcdg:TableView.ShowFixedColumnSplitter="False" 

                                        xcdg:TableView.DetailIndicatorWidth="50"/> 

           </xcdg:DetailConfiguration.DetailConfigurations> 

        </xcdg:DetailConfiguration> 

     </xcdg:DataGridControl.DetailConfigurations> 

  </xcdg:DataGridControl> 

</Grid>
Requirements

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

See Also

Reference

ColumnBase Class
ColumnBase Members