如何在扩展选择模式下选择当前的DataGrid行?

时间:2012-07-28 09:35:29

标签: wpf datagrid

我有dataGrid扩展的选择模式,所以我可以选择很多行。

我有一个带有多值转换器的样式触发器,可根据某些条件设置行的背景颜色。

好吧,在我的探针中,我传递了三个参数:ItemsSourceSelectedItemsselectedItem。我注意到以下行为:

当我选择第一行时,ItemsSource包含dataGrid的所有行。这是对的。 SelectedItems有0项,selectedItem为空。但是,如果没有做任何操作,代码会在转换器中第二次输入,在这种情况下,SelectedItemdataGrid中选择的项目,但SelectedItems没有项目。

当我选择第二行时,SelectedItems有一个项目,dataGrid的第一个选定行和selectedItem也有第一行。在这种情况下,代码不会在转换器中第二次输入。

当我选择第三行时,SelectedItems有两个项目,第一行和第二行被选中,但不是第三行。 SelectedItem已选择第一行。

所以我看到SelectedItem总是选择第一行,SelectedItems有n-1个选定的行。

但我怎么知道当前选定的行是什么?新行?

1 个答案:

答案 0 :(得分:2)

<DataGrid SelectionMode="Extended" SelectionUnit="FullRow"></DataGrid>

您的selectionUnit必须是FullRow。我希望这会有所帮助。