最佳答案
在我的 XAML 代码中,我想根据一个特定行中对象的值设置每一行的 Background颜色。我有一个 ObservableCollection的 z,并且每个 z都有一个称为 State的属性。在我的 DataGrid课程中,我是这样开始的:
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Setter Property="Background"
Value="{Binding z.StateId, Converter={StaticResource StateIdToColorConverter}}"/>
</Style>
</DataGrid.RowStyle>
这是一种错误的方法,因为 x 不是我的 ViewModel 类中的属性。
在我的 ViewModel 类中,我有一个 ObservableCollection<z>,它是这个 DataGrid的 ItemsSource,还有一个类型为 z的 SelectedItem。
我可以将颜色绑定到 SelectedItem,但是这只会改变 DataGrid中的一行。
如何基于一个属性更改此行的背景色?