Specialization of the
Row class that contains a collection of
ColumnManagerCells that can be used to manipulate the columns in a grid.
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 recreate the default card-view header, which contains a ColumnManagerRow to the right of a GroupByControl.The following example demonstrates how to force the GroupByControl and ColumnManagerRow contained in a grid's fixed header section to occupy all the available width.
By default, items in the fixed header and footer sections will only span across the width occupied by the columns.
<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.View>
<xcdg:CardView UseDefaultHeadersFooters="False">
<xcdg:CardView.FixedHeaders>
<DataTemplate>
<DockPanel>
<!-- OneWay binding is used because we want the ColumnManagerRow's height to
follow what is defined by the GroupByControl. A FallbackValue
is specified so the initial measure pass has an acceptable minimal
value.-->
<xcdg:ColumnManagerRow DockPanel.Dock="Right"
Height="{Binding ElementName=groupByControl,
Path=ActualHeight,
Mode=OneWay,
FallbackValue=60}"/>
<xcdg:GroupByControl x:Name="groupByControl"/>
</DockPanel>
</DataTemplate>
</xcdg:CardView.FixedHeaders>
</xcdg:CardView>
</xcdg:DataGridControl.View>
</xcdg:DataGridControl>
</Grid>
<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}"
AutoCreateItemProperties="False">
<xcdg:DataGridCollectionViewSource.ItemProperties>
<xcdg:DataGridItemProperty Name="ShipCountry"/>
<xcdg:DataGridItemProperty Name="ShipCity"/>
</xcdg:DataGridCollectionViewSource.ItemProperties>
</xcdg:DataGridCollectionViewSource>
<Style TargetType="{x:Type xcdg:GroupHeaderControl}">
<Setter Property="MinWidth"
Value="{Binding RelativeSource={RelativeSource AncestorType={x:Type ScrollContentPresenter}},
Path=ActualWidth}"/>
</Style>
<Style TargetType="{x:Type xcdg:ColumnManagerRow}">
<Setter Property="MinWidth"
Value="{Binding RelativeSource={RelativeSource AncestorType={x:Type ScrollContentPresenter}},
Path=ActualWidth}"/>
</Style>
</Grid.Resources>
<xcdg:DataGridControl x:Name="OrdersGrid"
ItemsSource="{Binding Source={StaticResource cvs_orders}}"/>
</Grid>
.NET: net5.0, net5.0-windows, net6.0, net6.0-macos, net6.0-windows, net7.0, net7.0-macos, net7.0-windows, net8.0, net8.0-browser, net8.0-macos, net8.0-windows, net9.0, net9.0-browser, net9.0-macos, net9.0-windows, net10.0, net10.0-browser, net10.0-macos, net10.0-windows.
.NET Framework: net20, net35, net40, net403, net45, net451, net452, net46, net461, net462, net463, net47, net471, net472, net48, net481.