不要问为什么,但是我需要一种方法来阻止用户在“新”数据网格视图行中输入一个单元格,同时选择了多行。
目前,正在选择鼠标在单击和拖动期间悬停在该行的第一列中的单元格。如果单击单元格,则不再选择行,因此您无法使用任何单元格单击事件或任何内容。
欢迎任何建议。
P.S。不要尝试从selectionchanged事件编辑currentcell,已经尝试过了!
谢谢,
艾萨克
答案 0 :(得分:0)
我知道DataGridView控件具有RowState属性。选择行后,请检查状态。我不确定状态是什么(如果我甚至在球场)......无论如何,你可能能够检查那条路线。
我正在寻找更多信息......
好的......我觉得我找到了一个很好的方法:
void DataGridView1_RowsAdded (object sender, DataGridViewRowsAddedEventArgs e)
{
currentNewRow = e.RowIndex;
}
void DataGridView1_CellMouseClick(Object sender, DataGridViewCellMouseEventArgs e)
{
if (e.RowIndex == currentNewRow)
{
// don't add to Selection
}
}
答案 1 :(得分:0)
使用CellStateChanged事件:
private void dataGridView_CellStateChanged(object sender, DataGridViewCellStateChangedEventArgs e) {
if (e.Cell.OwningRow.IsNewRow && dataGridView.SelectedRows.Count > 1)
e.Cell.Selected = false;
}