Je sais qu'il n'est pas implicitement possible de lier du texte à un en-tête DataGrid via Dynamically setting the Header text of a Silverlight DataGrid Column, mais je suivais certains exemples de code en ligne pour substituer un TextBlock pour l'en-tête. Cependant, peu importe ce que je fais, le texte auquel je suis lié n'apparaîtra pas.Liaison DataGridHeader ContentTemplate dans Silverlight
Mon XML de mon avis:
<dg:DataGridTextColumn Binding="{Binding Path=UnitKey}" IsReadOnly="True">
<dg:DataGridTextColumn.HeaderStyle>
<Style TargetType="dataprimitives:DataGridColumnHeader">
<Setter Property="ContentTemplate">
<Setter.Value>
<DataTemplate>
<TextBlock Text="{Binding Path=KeyListName}"/>
</DataTemplate>
</Setter.Value>
</Setter>
</Style>
</dg:DataGridTextColumn.HeaderStyle>
</dg:DataGridTextColumn>
Mon C# de ma vue Modèle:
public string KeyListName
{
get { return keyListName; }
set
{
keyListName = value;
raisePropertyChanged("KeyListName");
}
}
Je ne peux pas comprendre ce que je .. négligé Merci d'avance pour votre aide!
Essayez d'utiliser un DataGridTemplateColumn au lieu d'un DataGridTextColumn – dparker
J'utilisais un TemplateColumn à l'origine, mais il a perdu son style visuel. – Evan