我有一个绑定到ObservableCollection的ListBox:
<ListBox ItemsSource="{Binding ObservableCollectionOfFoos}" />
ObservableCollection包含Foo的实例,Foo实现了INotifyPropertyChanged。 我正在尝试将ListBoxItems的属性绑定到Foo的属性。 这是我试过的:
<DataTemplate DataType="{x:Type local:Foo}" >
<TextBlock Content="{Binding PropertyOfFoo}" Background="{Binding AnotherPropertyOfFoo}"/>
</DataTemplate>
这是有效的,但是,问题是我只能访问TextBlock的属性而不是包含ListBoxItem,因此,例如,Background仅更改文本周围的颜色而不是整个条目。我有一种感觉,我在这里使用错误的工具。
正确方向的一点将非常感激。
答案 0 :(得分:1)
DataTemplate
指定列表框项目内容的模板(UI表示)。您需要设置样式的是项容器本身,可以通过ItemContainerStyle
的{{1}}属性来完成。