2016-02-26 36 views
0

在WPF DataGrid我想在点击某个项目时选择多个项目。我试图通过在CurrentCellChanged -event和SelectionChanged -event中手动设置DataGridSelectedItems,但SelectedItems将在事件处理后重置。我怎么能这样做?在DataGrid上点击选择多个项目

回答

1

如果你设置DataGrid这样的属性。

SelectionMode="Extended" SelectionUnit="FullRow" 

您可以在SelectionCellsChanged事件中写下类似内容。其中ObservableCollection<OwnObject>设置为我的DataGridItemsSource

private void dgTest_SelectedCellsChanged(object sender, SelectedCellsChangedEventArgs e) 
{ 
    dgTest.SelectedItems.Add((dgTest.ItemsSource as ObservableCollection<OwnObject>)[0]); 
} 
+0

很好,谢谢!对我来说,即使没有明确设置SelectionMode和SelectionUnit,也可以工作,但我不确定是否有人将这些设置设置为整个应用程序的默认值,或者它们总是默认值。 –

+0

不客气。如果'SelectionMode'没有设置为'Extended',我们不能修改'SelectedItems',所以它可能被设置为某个地方或默认设置。 – bars222