2016-11-15 78 views
1

我想獲得一些選定的行項目&試圖操縱它們。目前SelectedItem一次只給我一行。並且SelectedItems不是依賴項屬性。我通過創建我們自己的依賴屬性來獲得選定的項目,找到了解決方案。除此之外還有其他選擇嗎?如何使用MVVM獲取wpf數據網格中的選定項目

+2

我認爲答案你的問題就在這裏 http://stackoverflow.com/questions/22868445/wpf-binding-selecteditems-in- MVVM –

回答

6

另一種可能的解決方案是一個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> 

然後獲取當前所選項目:

var selectedItems = Items.Where(i => i.IsSelected).ToList(); 
相關問題