WPF DataGrid: сделать заголовок столбца Image ресурсом?
-
10-07-2019 - |
Вопрос
Я создал столбец флажка в сетке данных WPF и установил заголовок столбца как изображение флажка. Вот моя разметка:
<toolkit:DataGridCheckBoxColumn Binding="{Binding Completed}" Width="25" IsReadOnly="false" >
<toolkit:DataGridCheckBoxColumn.Header>
<Image Source="..\Resources\Images\checkmark.png" Height="9" Width="9" Margin="3,0,0,0" />
</toolkit:DataGridCheckBoxColumn.Header>
</toolkit:DataGridCheckBoxColumn>
Я хотел бы преобразовать этот заголовок в ресурс (например, " CheckmarkHeader "), чтобы я мог вызывать его в других сетках, используя свойство HeaderStyle столбца сетки данных - что-то вроде этого:
<toolkit:DataGridCheckBoxColumn ... HeaderStyle="CheckmarkHeader ... />
Можно ли это сделать? Как бы я это сделал? Спасибо за вашу помощь.
Решение
Это должен быть HeaderStyle
? Использование HeaderTemplate
с DataTemplate
примерно так работает:
<Window.Resources>
<DataTemplate x:Key="CheckMarkTemplate">
<Image Source="..\Resources\Images\checkmark.png" Height="9" Width="9" Margin="3,0,0,0" />
</DataTemplate>
</Window.Resources>
...
<toolkit:DataGridCheckBoxColumn ... HeaderTemplate="CheckMarkTemplate" ... />
Другие советы
Если бы я хотел, чтобы для каждого столбца было другое изображение, нужно ли создавать таблицу данных для каждого из них?
Не связан с StackOverflow