找不到任何方法来做我喜欢的事。
我有一个名为DataGridView
的{{1}}。我想要的是在填写之后检查当前单元格是否可接受(不低于data1
)。如果是 - 将其更改为-99
。如果我将最小值设置为文本框并在其不正确时更改其值,则类似。
这是代码:
-99
此代码不起作用。并没有出现任何错误。
答案 0 :(得分:1)
我认为您正在寻找的是DataGridView.CellValidating当用户离开当前单元格但在CellLeave触发或绑定数据被推送到数据源之前,此事件将触发。这允许您:检查用户输入的值,防止用户离开单元格,更改用户输入的值,在单元格上设置错误指示符。
答案 1 :(得分:1)
此代码可按您的要求运行:
private void data1_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
DataGridViewTextBoxCell cell = (DataGridViewTextBoxCell)data1.Rows[e.RowIndex].Cells[e.ColumnIndex];
if (Convert.ToInt32(cell.Value) <= -99)
cell.Value = -99;
}
Cellleave
在将单元格更改为其他单元格并离开单元格后,事件将获取单元格的上一个值。 CellEndEdit
事件获取最后一个值。代码在CellValidated
事件中也相同。