1

我在表单上有一个 DataGridView,下面是它的内容示例:

Cat  | Boy
Dog  | Girl
Crow | Boy
Bird | Boy

我已MultiSelect启用,如果我从第四行(鸟)开始选择并拖动到第一行(猫),那么在SelectedRows集合中,第一项是猫(因为那里有编辑指示器)。这很好。

但是,如果我从第一行(Cat)开始选择并向下拖动到第四行(Bird),则编辑指示器位于 Bird,因此,集合中的第一行是 Bird。第二个项目是乌鸦,它会相应地向上移动。

有没有办法改变行为,使集合中的第一项始终是选择的第一行(从上到下),然后相应地向下进行,忽略用户选择方向?

我尝试更改RowHeadersVisible为 false 并且确实删除了左侧的黑色指示器,但问题仍然存在。

谢谢。

4

1 回答 1

1

var orderedRows = dataGridView.SelectedRows.Cast<DataGridViewRow>().OrderBy(row => row.Index);

于 2012-10-04T20:15:31.560 回答