我正在尝试根据绑定的值设置 DataGrid 行的颜色。我使用了以下解决方案:
<DataGrid.RowStyle>
<Style TargetType="sdk:DataGridRow" >
<Setter Property="Background" Value="{Binding SomeProperty, Mode=OneWay, Converter={StaticResource myConverter}}"/>
</Style>
</DataGrid.RowStyle>
这在加载行时有效,但如果我更改绑定的值,则行颜色不会相应更新。相同的属性绑定到(相同数据网格的)单个列的属性,并且可以正常工作
...
<CheckBox ... IsEnabled="{Binding SomeProperty, Converter={StaticResource myConverter}, Mode=OneWay}"
...
是因为样式只应用一次吗?我不能使用触发器,因为它们似乎在 Silverlight 中不起作用。还有其他想法吗?我必须将背景应用于每一列吗?