データテンプレート内で ListBoxItem のタグメンバーを設定するにはどうすればよいですか? ListBox をデータバインドしており、DataContext から ListBoxItem.Tag に情報を追加しようとしています。ListBoxItem を表示するために DataTemplate を使用しています。
1910 次
1 に答える
1
アイテムの DataTemplate で Tag を設定する代わりに、スタイルを通じて設定することを検討する必要があります。スタイルとテンプレートの両方をアイテムに適用でき、それらが互いに干渉することはありません。アイテムは ListBox 内にあるため、それらは自動的に ListBoxItem にラップされ、スタイルでそのタイプをターゲットにすることができます。
ここでは、いくつかの DataTemplate をアイテム (リソースとしてどこかで定義) に適用し、Style を使用して、この ListBox 内の各アイテムのタグ値を設定しています。
<ListBox ItemsSource="{Binding MyItems}" ItemTemplate="{StaticResource MyDataTemplate}">
<ListBox.ItemContainerStyle>
<Style TargetType="{x:Type ListBoxItem}">
<Setter Property="Tag"
Value="It has a Tag" />
</Style>
</ListBox.ItemContainerStyle>
</ListBox>
于 2009-06-04T15:47:22.643 に答える