protected override void Render(System.Web.UI.HtmlTextWriter writer)
{
//********************************************
base.Render(writer);//调用基类的函数据输出数据
//********************************************
}

解决方案 »

  1.   

    我把代码改为,还是不行?
    调用的时候:private void Form1_Load(object sender, System.EventArgs e)
    {
    MyDatagrid a = new MyDatagrid();
             a.   //.后面可供选择的函数还是只有PreProcessMessage
                       }类的代码:
    using System;
    namespace delete
    {
    public class MyDatagrid:DataGrid
    {
         public override bool PreProcessMessage( ref Message msg ) 
      { 
      Keys keyCode = (Keys)(int)msg.WParam & Keys.KeyCode; 
      if(msg.Msg == WM_KEYDOWN && keyCode == Keys.Delete) 
       { 
    if(MessageBox.Show("Delete this row?", "", MessageBoxButtons.YesNo) == DialogResult.No)  
     return true; 
     } 
       return base.PreProcessMessage(ref msg); 
       } 

    protected override void Render(System.Web.UI.HtmlTextWriter writer)
    {
    base.Render(writer);//调用基类的函数据输出数据
    }
    }
      

  2.   

    请查一下DataGrid是否允许继承,
    另外你至少还应包含DataGrid所在的命名空间,如: 
    using System.Data;