0
希望有人可以在这里帮忙。使用绑定触发样式更改
我有我的ViewModel中List属性填充的ListView。
我有我的ViewModel中的另一个列表属性,其中包含UI中的行,我需要突出显示。
<ListView.Resources>
<Style TargetType="ListViewItem">
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Foreground" Value="Red"/>
</Trigger>
</Style.Triggers>
</Style>
</ListView.Resources>
这的确如此,我在List中选择的任何项目在Red中突出显示。 我希望能够将此样式触发器绑定到我的ViewModel中的List属性。
有人知道这可以实现吗?
请完整阅读该问题。我说:“我的ViewModel中有另一个列表属性,它包含我需要突出显示的UI中的行。” “我希望能够将此样式触发器绑定到ViewModel中的List属性中。” –
@SheikYerbouti恐怕我不明白你的问题。你的ViewModel不应该有UI对象,它应该有数据对象。这样做的理想方式是让你的数据对象反映你的视图,所以如果你想跟踪ViewModel中的选定项目,那么数据对象应该有一个像IsSelected属性。如果你真的想要两个项目列表,然后遍历所选项目列表,找到数据列表中的项目,并将它的IsSelected属性设置为true – Rachel
ViewModel没有UI逻辑,UI没有代码。按照MVVM。我在MVVM中有两个列表属性,一个包含我想要列表中的所有对象,另一个包含要高亮显示的对象。 isSelected只是一个例子。我想将该触发器应用于列表视图中的一堆项目。我希望这些项目由我的MVVM中的对象列表确定。 –