我正在使用MVVM和WPF。
VM包含 -
我可以使用以下方法之一设置每行的背景颜色
现在我想将所有行的背景颜色设置为LightBlue,条件为Task.TaskId == VM.CurrentTaskId。我该怎么做?
我无法使用样式上的数据触发器实现它,因为
<DataTrigger Binding="{Binding TaskId}" Value="1001">
是有效的但是使用Binding for Value是无效的,有些是
<DataTrigger Binding="{Binding TaskId}" Value="{Binding CurrentTaskId}">
我能够使用StyleSelector为某些行实现备用行颜色和特定颜色,但我又如何找到CurrentTaskId?
每当CurrentTaskId发生变化时,我如何实现改变背景颜色的功能?
答案 0 :(得分:1)
您应该尝试在数据触发器中使用多重绑定。
请参阅此问题以获得类似的解决方案 - WPF DataTrigger - Setting ListBoxItem IsSelected
答案 1 :(得分:0)
使用IMultiValueConverter
和MultiBinding