C# 当ListBox绑定到ObservableCollection时绑定ListBoxItem属性
我有一个绑定到ObservableCollection的列表框:C# 当ListBox绑定到ObservableCollection时绑定ListBoxItem属性,c#,wpf,mvvm,listbox,C#,Wpf,Mvvm,Listbox,我有一个绑定到ObservableCollection的列表框: <ListBox ItemsSource="{Binding ObservableCollectionOfFoos}" /> ObservableCollection包含Foo的实例,Foo实现INotifyPropertyChanged。 我正在尝试将ListBoxItems的属性绑定到Foo的属性。 以下是我尝试过的: <DataTemplate DataType="{x:Type local:Foo}
<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,因此,例如,背景只会更改文本周围的颜色,而不会更改整个条目。我有一种感觉,我用错了工具来做这项工作
如果你能指出正确的方向,我将不胜感激 数据模板指定列表框项内容的模板(UI表示)。需要设置样式的是项容器本身,它可以通过
列表框的ItemContainerStyle
属性来完成DataTemplate
指定列表框项内容的模板(UI表示)。您需要设置项容器本身的样式,这可以通过列表框的项容器样式属性来完成