如何从我的ViewModel中的ListView获取SelectedItems

时间:2012-08-22 08:55:12

标签: wpf listviewitem

  

可能重复:
  Binding SelectedItems of Listview

我有一个ListView,用户可以选择多个项目。我需要在View Model中获取从ListView中选择的项目列表。

请建议从ListView获取SelectedItems。

谢谢

1 个答案:

答案 0 :(得分:1)

我通常有两种方法

如果我只需要知道为命令而选择的内容,我将在RelayCommand中设置DelegateCommandViewModel以期望{{1}类型的参数并将IList<SomeClass>作为ListView.SelectedItems

传递给我
CommandParameter

我经常使用的另一种方法是在<Button Command="{Binding SomeCommand}" CommandParameter="{Binding ElementName=MyListView, Path=SelectedItems}" /> 中使用的任何数据项上创建IsSelected属性,并将其绑定到ListView属性

ListViewItem.IsSelected

然后我的<Style TargetType="{x:Type ListViewItem}"> <Setter Property="IsSelected" Value="{Binding IsSelected}" /> </Style> 可以通过查看ViewModel属性

来查看是否选择了某个项目
IsSelected