继承一个datagrid,想让实例都在currentcellchange事件中执行同样的代码,应该如何写代码?

解决方案 »

  1.   

    datagrid.currentcellchange+=new EventHandler(datagrid_currentcellchange);
    protected void datagrid_currentcellchange()
    {
        //...
    }
      

  2.   

    楼主你可以这样做。
    在你的自定义datagrid控件里注册该事件currentcellchange
    如下:
    datagrid.currentcellchange+=new EventHandler(datagrid_currentcellchange); datagrid_currentcellchange 是事件处理方法。
    protected void datagrid_currentcellchange() 

        //... 
    }
    在实例datagird1中,
    添加该方法即可,注意,不要在去双击datagrid1的currentcellchange事件,不然会执行2次
    protected void datagrid_currentcellchange() 

        //... 
    }
      

  3.   

    这是在继承类中的写法吗?"datagrid"是指基类还是继承类?为什么我在继承类中这样写,在"."后却没有相应的提示出现?
      

  4.   

    刚才写的少了两个参数,重新补上,已测试。
    public partial class datagrid : DataGridView
        {
            public datagrid()
            {
                InitializeComponent();            CurrentCellChanged+=new EventHandler(datagrid_CurrentCellChanged);        }        protected override void OnPaint(PaintEventArgs pe)
            {
                // TODO: 在此处添加自定义绘制代码            // 调用基类 OnPaint
                base.OnPaint(pe);
            }        protected void datagrid_CurrentCellChanged(object sender, EventArgs e)
            {
                MessageBox.Show("123");  
            }
        }