Мне интересно укладывать заголовки столбцов в Xceed DataGrid. Цель состоит в том, чтобы сделать цвет фона серым, с темно-серой рамкой вокруг каждой ячейки столбца заголовка. Мне казалось, как лучший способ сделать это, чтобы стиль ColumnManager:Styling Xceed ColumnManagerCell
<Style TargetType="{x:Type xcdg:ColumnManagerCell}">
<Setter Property="Template" Value="{StaticResource ColumnManagerCellTemplate}"/>
<Setter Property="BorderBrush" Value="#c5c5c5"/>
<Setter Property="BorderThickness" Value="1,1,1,1"/>
</Style>
Используя этот шаблон:
<ControlTemplate x:Key="ColumnManagerCellTemplate" TargetType="xcdg:ColumnManagerCell">
<Grid Background="LightGray" >
<xcdg:DataCell Content="{TemplateBinding Content}"
HorizontalAlignment="Stretch"
VerticalAlignment="Center"
Background="LightGray"
HorizontalContentAlignment="Left"
VerticalContentAlignment="Center"
BorderBrush="DarkGray"
BorderThickness="2"/>
</Grid>
</ControlTemplate>
Цвет фона показывает правильно, как и содержание, но я не могу получить темно-серая граница, чтобы появиться вокруг каждой ячейки. (Или любая граница цвета вообще.) Что мне не хватает? Не следует ли контролировать свойства BorderBrush и BorderThickness? Кажется, они работают над остальными ячейками в сетке, но не с ColumnManagerCells.
Это сработало отлично! Спасибо. Я не понимал, что вам не нужно иметь сетку внутри ColumnManagerCell - я просто подражал тому, что я мог видеть в макете пользовательского интерфейса, используя WPF Inspector. – quietkatalyst