private void F2Handler(object sender,DataGridF2KeyArgs e)
 {
     e = new DataGridF2KeyArgs(_keyCode);
 }
        public override bool PreProcessMessage(ref Message msg )
        {
            try
            {
                Keys keyCode = (Keys)(int)msg.WParam & Keys.KeyCode;

                _keyCode = keyCode;

                if(keyCode == Keys.F2)
                {
                    if (this.ReadOnly == true)
                    {
                        DataGridF2KeyArgs e = new DataGridF2KeyArgs(keyCode);

                        if(CellKeyDown != null)
                            CellKeyDown(this,e);

                        return false;
                    }
                }
                return base.PreProcessMessage(ref msg);
            }
            catch(Exception ex)
            {
                string strErr = ex.Source + " - " + ex.Message + " - " + ex.StackTrace;
                return false;
            }
        }