WPF DataGrid: transformando o cabeçalho da coluna da imagem em um recurso?
-
10-07-2019 - |
Pergunta
Eu criei uma coluna de caixa de seleção em um datagrid WPF e configurei o cabeçalho da coluna como uma imagem de marca de seleção. Aqui está minha marcação:
<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>
Gostaria de converter esse cabeçalho em um recurso (por exemplo, "CheckmarkHeader", para que eu possa invocá-lo em outras grades usando a propriedade HeadrStyle da coluna de uma grade de dados-algo assim:
<toolkit:DataGridCheckBoxColumn ... HeaderStyle="CheckmarkHeader ... />
Isso pode ser feito? Como eu faria isso? Obrigado pela ajuda.
Solução
Tem que ser HeaderStyle
? Usando HeaderTemplate
com um DataTemplate
Como parece funcionar:
<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" ... />
Outras dicas
Se eu quisesse uma imagem diferente para cada coluna? Deveria construir uma plataforma de dados para cada uma delas?
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow