无法将eventandler转换为KeyPressEventHandler

本文关键字:KeyPressEventHandler 转换 eventandler | 更新日期: 2023-09-27 17:54:41

在运行下面的代码时,我得到了这个异常:

不能隐式转换System。事件,System.Window.Form.KeyPressEventHandler

    private void grdPOItems_EditingControlShowing(object sender, DataGridViewEditingControlShowingEventArgs e)
    {
        int colIndex = grdPOItems.CurrentCell.ColumnIndex;
        string colName = grdPOItems.Columns[colIndex].Name;
        if(colName == "Qty" || colName == "Rate")
        {
            e.Control.KeyPress += new EventHandler(CheckKey);
        }
    }
    private void CheckKey(object sender, EventArgs e)
    {
        if (((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8 && e.KeyChar!='.'))
        {
            e.Handled = true;
        }  
    }

无法将eventandler转换为KeyPressEventHandler

根据MSDN,您的处理程序签名错误。

 e.Control.KeyPress += CheckKey;
private void CheckKey(object sender, KeyPressEventArgs  e)
{
    if (((e.KeyChar < 48 || e.KeyChar > 57) && e.KeyChar != 8 && e.KeyChar!='.'))
    {
        e.Handled = true;
    }  
}
相关文章:
  • 没有找到相关文章