在我的DataGridView上,我將SelectionMode設置爲FullRowSelect。當我在DataGridView中選擇多行並左鍵單擊某個單元格時,將取消選擇所有其他行,並且只選中我左鍵單擊的行。這不會發生在右鍵單擊上。DataGridView在左邊選擇保留多行Select
如何設置我的DataGridView,以便我可以選擇多行,左鍵單擊單元格,並且所有相同的行保持選擇狀態?
在我的DataGridView上,我將SelectionMode設置爲FullRowSelect。當我在DataGridView中選擇多行並左鍵單擊某個單元格時,將取消選擇所有其他行,並且只選中我左鍵單擊的行。這不會發生在右鍵單擊上。DataGridView在左邊選擇保留多行Select
如何設置我的DataGridView,以便我可以選擇多行,左鍵單擊單元格,並且所有相同的行保持選擇狀態?
這可能很難,因爲它違反了Windows的標準UI行爲。您可能需要讓您的用戶界面跟蹤DGV中選擇哪些行,並在左鍵單擊後更改之前的選擇。不過,這會給你帶來更多的問題。即:
的更全面的替代方法是陷阱的DGV所有MouseDown
/Click
事件,並實現自己的選擇行爲,雖然我不知道到什麼程度,甚至有可能與WinForms的。
我的小見解是重新考慮這個UI設計。它是否符合用戶的期望? :)
更新:替代的替代剛剛發生,我認爲:如果這種行爲是出於某種原因,完全必要的,最好的辦法是創建,增加了一種選擇的」鎖定自定義控件「狀態到DataGridView。然後,用戶可以明確地向Windows的默認行爲請求覆蓋(例如,通過選擇行然後單擊鎖定按鈕)。然而,構建這樣的東西並不是微不足道的。
是的,建議的行爲將是糟糕的UI設計。 – Jonathan 2011-01-11 19:20:15