none
DataGridViewCellValidatingEventArgs 没有构造函数 RRS feed

  • 问题

  • DataGridViewCellValidatingEventArgs 没有构造函数

    我想构造一个DataGridViewCellValidatingEventArgs 对象,但是失败。代码如下:

    int columnIndex=1;
    int rowIndex=2;
    string formatedValue=null;
    DataGridViewCellValidatingEventArgs  ex=new DataGridViewCellValidatingEventArgs (columnIndex,rowIndex,formatedValue);

    错误如下:
    类型“System.Windows.Forms.DataGridViewCellValidatingEventArgs”未定义构造函数

    请问如何解决呢
    2009年8月8日 9:58

答案

  • 您好,事件参数由事件本身传递,该参数类未提供构造函数,不能由客户程序实例化。直接使用即可。
    使用方法请参考:http://msdn.microsoft.com/zh-cn/library/system.windows.forms.datagridviewcellvalidatingeventargs.aspx
    2009年8月8日 10:35
  • 你好!
         DataGridViewCellValidatingEventArgs没有提供构造函数,不能自己来实例化,直接使用系统传给你的参数就可以了:
    private
     void
     dataGridView1_CellValidating(object sender,
    DataGridViewCellValidatingEventArgs e)
    {
    dataGridView1.Rows[e.RowIndex].ErrorText = "" ;
    int newInteger;

    // Don't try to validate the 'new row' until finished
    // editing since there
    // is not any point in validating its initial value.
    if (dataGridView1.Rows[e.RowIndex].IsNewRow) { return ; }
    if (!int .TryParse(e.FormattedValue.ToString(),
    out newInteger) || newInteger < 0)
    {
    e.Cancel = true ;
    dataGridView1.Rows[e.RowIndex].ErrorText = "the value must be a non-negative integer" ;
    }
    }

    周雪峰
    2009年8月8日 12:19
    版主

全部回复

  • 您好,事件参数由事件本身传递,该参数类未提供构造函数,不能由客户程序实例化。直接使用即可。
    使用方法请参考:http://msdn.microsoft.com/zh-cn/library/system.windows.forms.datagridviewcellvalidatingeventargs.aspx
    2009年8月8日 10:35
  • 你好!
         DataGridViewCellValidatingEventArgs没有提供构造函数,不能自己来实例化,直接使用系统传给你的参数就可以了:
    private
     void
     dataGridView1_CellValidating(object sender,
    DataGridViewCellValidatingEventArgs e)
    {
    dataGridView1.Rows[e.RowIndex].ErrorText = "" ;
    int newInteger;

    // Don't try to validate the 'new row' until finished
    // editing since there
    // is not any point in validating its initial value.
    if (dataGridView1.Rows[e.RowIndex].IsNewRow) { return ; }
    if (!int .TryParse(e.FormattedValue.ToString(),
    out newInteger) || newInteger < 0)
    {
    e.Cancel = true ;
    dataGridView1.Rows[e.RowIndex].ErrorText = "the value must be a non-negative integer" ;
    }
    }

    周雪峰
    2009年8月8日 12:19
    版主