1
CTRLキーを押して、選択したDataGridViewRowをクリックすると、行が選択されません。どうすればこれをやめることができますか?Ctrlキーを押したときにDataGridViewRowを非表示にする
CTRLキーを押して、選択したDataGridViewRowをクリックすると、行が選択されません。どうすればこれをやめることができますか?Ctrlキーを押したときにDataGridViewRowを非表示にする
これは、のCtrlを使用した複数選択の標準的な動作です。なぜあなたはユーザーの予想されるインターフェイスを壊しますか?私はしたいので
DataGridViewRow[] lastSelectedRows = new DataGridViewRow[0];
void grid_SelectionChanged(object sender, System.EventArgs e) {
if ((Control.ModifierKeys & Keys.Control) == Keys.Control) {
foreach (DataGridViewRow row in lastSelectedRows) {
if (!row.Selected) row.Selected = true;
}
}
DataGridViewSelectedRowCollection selected = grid.SelectedRows;
lastSelectedRows = new DataGridViewRow[selected.Count];
selected.CopyTo(lastSelectedRows, 0);
}
:はい、あなたは
SelectionChanged
をフック場合は動作しているようです、のようなもの - あなたはおそらく(...私は見てみましょう)選択範囲の変更を検出することにより、その周り(編集)ををハック可能性常に行が選択されていることを確認する –