如何使用MVVM获取wpf数据网格中的选定项

如何使用MVVM获取wpf数据网格中的选定项,wpf,mvvm,Wpf,Mvvm,我想获取一些选定的行项目并尝试操作它们。目前,SelectedItem一次只给我一行。而SelectedItems不是依赖项属性。我通过创建我们自己的依赖项属性来获取所选项目,找到了一个解决方案。除此之外还有其他选择吗?另一种可能的解决方案是在网格中显示的项目中添加IsSelected属性 public bool IsSelected { get { return _isSelected; } set { RaiseP

我想获取一些选定的行项目并尝试操作它们。目前,SelectedItem一次只给我一行。而SelectedItems不是依赖项属性。我通过创建我们自己的依赖项属性来获取所选项目,找到了一个解决方案。除此之外还有其他选择吗?

另一种可能的解决方案是在网格中显示的项目中添加IsSelected属性

public bool IsSelected
    {
        get { return _isSelected; }
        set
        {
           RaisePropertyChanged(_isSelected, value);
        }
    }
然后将样式添加到数据网格行以更改该属性

  <Style TargetType="{x:Type DataGridRow}" >
     <Setter Property="IsSelected" Value="{Binding Path=IsSelected, Mode=TwoWay}" />
  </Style>

另一种可能的解决方案是将IsSelected属性添加到网格中显示的项目中

public bool IsSelected
    {
        get { return _isSelected; }
        set
        {
           RaisePropertyChanged(_isSelected, value);
        }
    }
然后将样式添加到数据网格行以更改该属性

  <Style TargetType="{x:Type DataGridRow}" >
     <Setter Property="IsSelected" Value="{Binding Path=IsSelected, Mode=TwoWay}" />
  </Style>

我想你的问题的答案是SelectedItems是一个只读的依赖属性,这就是问题所在。这是否回答了你的问题?我想你的问题的答案是SelectedItems是一个只读的依赖属性,这就是问题所在。这是否回答了你的问题?