WinForm注1:イベントおよび編集し、編集セルのDataGridViewのTextBoxの順序

テキストボックスの編集ボックス

 

あなたは、マウスを使用して、またはフォーカスメソッドを呼び出すことによって、フォーカスを変更すると、フォーカスイベントは次の順序で発生します。

入る

GotFocus

LostFocus

去ります

検証

検証
---------------------

 

セルCELL

編集セルなしの一次、すなわちの場合:

細胞は、フォーカスを取得したとき、または細胞が入力フォーカスを受け取ったときCellEnter-のDataGridViewが発生します。

CellLeave-は、セルが入力フォーカスを失ったときに発生し、現在のセルです。

セルは、トリガデータ検証しながら、データの検証を入力フォーカスを失ったときにCellValidating-が生じます。

CellValidated - セルはデータ検証が完了した後に発生します。

 

編集するセルの第2の後の一連のイベント

細胞は、フォーカスを取得したとき、または細胞が入力フォーカスを受け取ったときCellEnter-のDataGridViewが発生します。

CellBeginEdit - 編集モードに入るための選択したセルで発生しました。

CellLeave-は、セルが入力フォーカスを失ったときに発生し、現在のセルです。

セルは、トリガデータ検証しながら、データの検証を入力フォーカスを失ったときにCellValidating-が生じます。

CellValueChanged-値が変更されたセルで発生します。

CellValidated - セルはデータ検証が完了した後に発生します。

CellEndEdit-は、現在選択されているセル出口の編集モードで発生しました。

アプリケーション

CellValidatingは、編集を取り消すことが正当ではない、入力データを検証するためにイベントを使用します。

 

プライベート ボイド dataGridView1_CellValidating(オブジェクト送信者、DataGridViewCellValidatingEventArgs E)
{ 
    // 編集可能な列
    IF(e.ColumnIndex =!2 && e.ColumnIndex =!3。 リターン;
     ダブル outDb = 0 ;
     IFダブル .TryParse(e.FormattedValue。 ToStringメソッド()、OUT outDb))
    { 
        e.Cancel = falseに; 
    } 
    そうでなければ
    { 
        e.Cancel = trueに ; // データのフォーマットが正しくない次いで、リストア
        dataGridView1.CancelEdit(); 
    } 
}

 

おすすめ

転載: www.cnblogs.com/noigel/p/10931433.html