2009-09-04 182 views

回答

6

嗯,我已经注意到与EditMode.EditOnEnter
问题它偏置很多DataGriView的默认行为,这是刺激性。 其中,编辑后的单元格即使在明确调用EndEdit方法时仍处于编辑模式(您正在强制单击另一个控件以使datagridview单元失去焦点)。

下面的一段代码工作得很好因为它让你单上点击任一单元格编辑,并通过按下回车键或点击DGView外(就像你在默认行为做)结束编辑

在这里你去:

private void myDatagridView_MouseUp(object sender, MouseEventArgs e) 
    { 
     if (e.Button == MouseButtons.Left) 
     { 
      hitTestInfo = myDatagridView.HitTest(e.X, e.Y); 
      if (hitTestInfo.Type == DataGridViewHitTestType.Cell) 
       myDatagridView.BeginEdit(true); 
      else 
       myDatagridView.EndEdit(); 
     } 
    } 
15

在DataGridView属性:编辑模式 - > EditOnEnter