环境:VS2005,C#1.把datagridview设置成可增加记录,可有时候一条记录还没写完,下面多出来好几行(正常的话应该下面只会多一个空白行),这样当我保存数据的时候,一直提示我出错,这个问题希望马上能解决,谢谢!!!
(这不会是datagrieview的一个bug吧)2.上次提了一个问题:
Datagridview中当用户输入的值不符合要求或条件时,怎样让焦点还是停留在当前单元格中(就是一定要到用户输入正确后才允许移到其他单元格)? 
高手们可否提供c#的代码,以前很多朋友的答复都不对,问题一直没解决,谢绝拷贝链接!!!只有这么多分了,谁能解决以上问题,下次再送100分!!!

解决方案 »

  1.   

    2
    DataGridView_CellValidating(object sender, DataGridViewCellValidatingEventArgs e)
      

  2.   

    单元格输入(值是3)完毕跳到下一个单元各的时候先是促发dataGridView1_CellValidating,然后是dataGridView1_CellValueChanged,
    但是在dataGridView1_CellValidating中,我用:
    MessageBox.Show(this.dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()); --值是空
    在dataGridView1_CellValueChanged中,我用
    MessageBox.Show(this.dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()); --值是2对于第一个问题,只有在dataGridView1_CellValidating中才能用e.cancel()=true,可当时的值又是空的,我怎么来实现第一个问题啊??/
      

  3.   

    在dataGridView1_CellValueChanged中,我用 
    MessageBox.Show(this.dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()); --值是3 
    写错了,不好意思!