datagridview - 如何防止在使用RowValidating后添加新行

datagridview - 如何防止在使用RowValidating后添加新行,第1张

我遇到了一个问题,我知道我可以得到你的协助。

我的表单包含datagridview,我使用Key Down向datagridview添加一个新行。问题是datagridview仍然添加了一个新行,尽管当我检查连续输入的数据时验证失败。以下是我的代码

private void dtDetail_KeyDown(object sender, KeyEventArgs e)
{ 
    //if (allow_add_row)
    if (dtDetail.CurrentCell.RowIndex == dtDetail.Rows.Count - 1)
        if (e.KeyCode == Keys.Down)
            dtDetail.Rows.Add();
}

private void dtDetail_RowValidating(object sender, DataGridViewCellCancelEventArgs e)        
{
    // I do some checking and set e.Cancel=true;
}

请在此问题中建议我是否可以在添加新行或任何解决方法之前检查错误。

最佳答案:

1 个答案:

答案 0 :(得分:0)

你是正确的。只需尝试设置e.Cancel = true而不进行任何检查,并在dtDetail.Rows.Add()处获得异常。检查你的"一些检查"代码。

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复