当您在 DataGridView 中结束编辑时,可以使用 DataGridView.EndEdit() 方法来触发 CellValidating 事件。以下是一个简单的示例,说明如何实现这一点:
private void dataGridView1_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
{
// 在这里编写您的验证逻辑
if (e.ColumnIndex == 0 && e.RowIndex == 0)
{
if (e.FormattedValue.ToString() == "")
{
MessageBox.Show("请输入数据");
dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].ErrorText = "数据不能为空";
e.Cancel = true;
}
else
{
dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].ErrorText = "";
}
}
}
private void button1_Click(object sender, EventArgs e)
{
dataGridView1.EndEdit();
}
在这个示例中,我们在 CellValidating 事件中添加了一些简单的验证逻辑。当用户点击按钮时,我们调用 DataGridView.EndEdit() 方法来结束编辑,并触发 CellValidating 事件。如果验证失败,我们将取消事件并显示错误消息。如果验证成功,我们将清除错误消息。
需要注意的是,DataGridView.EndEdit() 方法只会触发当前正在编辑的单元格的 CellValidating 事件。如果您需要验证所有单元格的数据,请确保在调用 DataGridView.EndEdit() 方法之前,所有单元格都已经结束编辑。
领取专属 10元无门槛券
手把手带您无忧上云