次の方法で共有


DataGridColumnStyle.Commit(CurrencyManager, Int32) メソッド

定義

派生クラスでオーバーライドされると、編集プロシージャを完了する要求を実行します。

protected public:
 abstract bool Commit(System::Windows::Forms::CurrencyManager ^ dataSource, int rowNum);
protected internal abstract bool Commit (System.Windows.Forms.CurrencyManager dataSource, int rowNum);
abstract member Commit : System.Windows.Forms.CurrencyManager * int -> bool
Protected Friend MustOverride Function Commit (dataSource As CurrencyManager, rowNum As Integer) As Boolean

パラメーター

rowNum
Int32

編集されている行の番号。

戻り値

Boolean

編集プロシージャが正常にコミットされた場合は true。それ以外の場合は false

次のコード例は、メソッドのオーバーライドの可能性を Commit 示しています。 このコードはメソッドを SetColumnValueAtRow 呼び出し、他の関数が列がまだ編集中であるかどうかを判断できるようにする変数を設定します。 その後、コードはメソッドを Invalidate 呼び出してコントロールを再描画します。 最後に、変更がコミットされたことを示す関数が返 true されます。

Protected Overrides Function Commit(dataSource As System.Windows.Forms.CurrencyManager, rowNum As Integer) As Boolean
    SetColumnValueAtRow(dataSource, rowNum, currentValue)
    isEditing = False
    Invalidate
    Commit = True
End Function

注意 (実装者)

このメソッドは Commit(CurrencyManager, Int32) 、編集状態をリセットするためにクラスから DataGridColumnStyle 派生したクラスで使用する必要があります。たとえば、編集コントロールをホストしている場合はフォーカスを受け入れる必要 DataGridColumnStyle があります。 メソッドを ConcedeFocus() 参照してください。

編集を Commit(CurrencyManager, Int32) 完了する要求を DataGridColumnStyle 受信したときにメソッドを呼び出します。 これがエラーなしでは不可能な場合は、次を返します false

この Commit(CurrencyManager, Int32) メソッドは、コントロールのパブリック メソッド OnMouseDown(MouseEventArgs) によって呼び出されます DataGrid 。 メソッドは、現在の行が変更された場合など、他のプライベート メソッドによっても呼び出されます。

適用対象

こちらもご覧ください