CurrencyManager.CancelCurrentEdit メソッド

定義

現在の編集操作をキャンセルします。

public:
 override void CancelCurrentEdit();
public override void CancelCurrentEdit ();
override this.CancelCurrentEdit : unit -> unit
Public Overrides Sub CancelCurrentEdit ()

次のコード例では、 CancelCurrentEdit ユーザーが ESC キーを押したときに を使用します。

private:
   void dataGrid1_KeyUp( Object^ /*sender*/, System::Windows::Forms::KeyEventArgs^ e )
   {
      if ( e->KeyCode == System::Windows::Forms::Keys::Escape )
      {
         
         // Escape key pressed.
         CurrencyManager^ gridCurrencyManager = dynamic_cast<CurrencyManager^>(this->BindingContext[dataGrid1->DataSource, dataGrid1->DataMember]);
         gridCurrencyManager->CancelCurrentEdit();
         MessageBox::Show( "Escape!" );
      }
   }
private void dataGrid1_KeyUp
(object sender, System.Windows.Forms.KeyEventArgs e)
{
   if(e.KeyCode == System.Windows.Forms.Keys.Escape){
      // Escape key pressed.
      CurrencyManager gridCurrencyManager = 
      (CurrencyManager)this.BindingContext[dataGrid1.DataSource, dataGrid1.DataMember];
      gridCurrencyManager.CancelCurrentEdit();
      MessageBox.Show("Escape!");
   }
}
Private Sub dataGrid1_KeyUp(ByVal sender As Object, _
ByVal e As System.Windows.Forms.KeyEventArgs)

    If e.KeyCode = System.Windows.Forms.Keys.Escape Then
        ' Escape key pressed.
        Dim gridCurrencyManager As CurrencyManager = _
            CType(Me.BindingContext(dataGrid1.DataSource, _
            dataGrid1.DataMember), CurrencyManager)

        gridCurrencyManager.CancelCurrentEdit()
        MessageBox.Show("Escape!")
    End If
End Sub

注釈

このメソッドは、データ ソースに含まれるオブジェクトが インターフェイスを実装している IEditableObject 場合にのみサポートされます。 データ ソース内に含まれるオブジェクトが インターフェイスを IEditableObject 実装していない場合、データに加えられた変更は破棄されません。

注意

このプロパティは、コントロールなどの複雑なデータ バインド コントロールが編集を DataGrid 取り消すために使用するように設計されています。 たとえば、ユーザーが ESC キーを押すと、 CancelCurrentEdit の メソッドが で CurrencyManager 呼び出されます DataGrid。 この同じ機能を必要とするコントロールを作成する場合を除き、このメソッドを使用しないでください。 代わりに、 クラスの CancelEdit メソッドを使用します DataRowView

適用対象

こちらもご覧ください