共用方式為


CurrencyManager.CancelCurrentEdit 方法

定義

取消目前的編輯作業。

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

範例

下列程式碼範例會在使用者按下 ESC 鍵時使用 CancelCurrentEdit

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 方法。

適用於

另請參閱