2012-09-26 25 views
1

我有一個窗體上的DataGridView,這裏是它的內容的例子:如何防止選擇順序影響哪個行在DataGridView中最先出現?

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

我啓用了MultiSelect,如果我在第四行(伯德)並拖動到第一行開始我的選擇(貓) ,那麼在SelectedRows集合中,第一項是Cat(因爲編輯指示符在那裏)。這很好。但是,如果我在第一行(Cat)處開始我的選擇並向下拖動到第四行(Bird),那麼編輯指示符位於Bird處,因此,集合中的第一行是鳥。第二項是烏鴉,並相應地向上推進。

是否有任何方法來改變行爲,使集合中的第一個項目始終是選擇的第一行(從上到下),然後相應地向下進行,忽略用戶選擇方向?

我試圖將RowHeadersVisible更改爲false,雖然這確實刪除了左側的黑色指示符,但問題仍然存在。

謝謝。

回答

1

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

相關問題