2009-09-04 24 views
8

私はDataGridViewコントロールでWinFormクライアントを操作しています。ユーザーがセルを選択するには一度クリックし、セルを編集するには再度クリックする必要があります。これをワンクリック編集モードに変更する方法は何ですか?私は前にこのようなものを見たと思ったが、名前を覚えていない。DataGridView - "セル選択スタイル" - セルの編集

のDataGridViewのプロパティで

答えて

6

まあ、私はそれは刺激性であるDataGriViewのデフォルト動作の多くをバイアスEditMode.EditOnEnter
に問題があることを気づきました。 編集中のセルは、EndEditメソッドが明示的に呼び出されても、編集モードにとどまります(他のコントロールをクリックしてフォーカスを失うように強制しています)。

次のコードは、それはあなたが任意のセルにシングルクリックで編集し、Enterキーを押すか(デフォルトの動作で行うのと同じように)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

エディットモード - > EditOnEnter

関連する問題