使用KEYPRESS事件,转换焦点

解决方案 »

  1.   

    在Datagrid扩展类中加入
    protected override bool ProcessDialogKey(System.Windows.Forms.Keys keyData)
      {
       if  (keyData  ==  Keys.Enter)  
       {  
     
        SendKeys.Send("{TAB}");  
        return  false;  
     
       }  
       base.ProcessDialogKey(keyData);  
       return  false; 
      }
      

  2.   

    public class MyDataGrid : DataGrid
    {
    protected override bool ProcessCmdKey(ref System.Windows.Forms.Message msg ,System.Windows.Forms.Keys keyData)
    {
    if(msg.WParam.ToInt32() == (int)Keys.Enter)
    {
    SendKeys.Send("{Tab}");
    return(true);
    }
    return base.ProcessCmdKey(ref msg,keyData);
    }
    }
      

  3.   

    楼主您跟踪测试一下.注意:必须是datagrid的扩展类中使用上面的函数才行