共用方式為


BindingManagerBase.CancelCurrentEdit 方法

定義

當在衍生類別中覆寫時,取消目前的編輯。

public:
 abstract void CancelCurrentEdit();
public abstract void CancelCurrentEdit ();
abstract member CancelCurrentEdit : unit -> unit
Public MustOverride Sub CancelCurrentEdit ()

範例

下列程式碼範例示範 CancelCurrentEditEndCurrentEdit 方法。 當您呼叫 方法時 CancelCurrentEdit ,會捨棄對資料所做的變更。 當您呼叫 方法時 EndCurrentEdit ,會保留變更。

private:
   void CancelEdit()
   {
      // Gets the CurrencyManager which is returned when the
      // data source is a DataView.
      BindingManagerBase^ myMgr = dynamic_cast<CurrencyManager^>(BindingContext[ myDataView ]);

      // Gets the current row and changes a value. Then cancels the
      // edit and thereby discards the changes.
      DataRowView^ tempRowView = dynamic_cast<DataRowView^>(myMgr->Current);
      Console::WriteLine( "Original: {0}", tempRowView[ "myCol" ] );
      tempRowView[ "myCol" ] = "These changes will be discarded";
      Console::WriteLine( "Edit: {0}", tempRowView[ "myCol" ] );
      myMgr->CancelCurrentEdit();
      Console::WriteLine( "After CanceCurrentlEdit: {0}", tempRowView[ "myCol" ] );
   }

   void EndEdit()
   {
      // Gets the CurrencyManager which is returned when the
      // data source is a DataView.
      BindingManagerBase^ myMgr = dynamic_cast<CurrencyManager^>(BindingContext[ myDataView ]);
      
      // Gets the current row and changes a value. Then ends the
      // edit and thereby keeps the changes.
      DataRowView^ tempRowView = dynamic_cast<DataRowView^>(myMgr->Current);
      Console::WriteLine( "Original: {0}", tempRowView[ "myCol" ] );
      tempRowView[ "myCol" ] = "These changes will be kept";
      Console::WriteLine( "Edit: {0}", tempRowView[ "myCol" ] );
      myMgr->EndCurrentEdit();
      Console::WriteLine( "After EndCurrentEdit: {0}", tempRowView[ "myCol" ] );
   }
private void CancelEdit()
{
    // Gets the CurrencyManager which is returned when the
    // data source is a DataView.
    BindingManagerBase myMgr =
        (CurrencyManager) BindingContext[myDataView];

    // Gets the current row and changes a value. Then cancels the
    // edit and thereby discards the changes.
    DataRowView tempRowView = (DataRowView) myMgr.Current;
    Console.WriteLine("Original: {0}", tempRowView["myCol"]);
    tempRowView["myCol"] = "These changes will be discarded";
    Console.WriteLine("Edit: {0}", tempRowView["myCol"]);
    myMgr.CancelCurrentEdit();
    Console.WriteLine("After CanceCurrentlEdit: {0}",
        tempRowView["myCol"]);
}

private void EndEdit()
{
    // Gets the CurrencyManager which is returned when the
    // data source is a DataView.
    BindingManagerBase myMgr =
        (CurrencyManager) BindingContext[myDataView];

    // Gets the current row and changes a value. Then ends the
    // edit and thereby keeps the changes.
    DataRowView tempRowView = (DataRowView) myMgr.Current;
    Console.WriteLine("Original: {0}", tempRowView["myCol"]);
    tempRowView["myCol"] = "These changes will be kept";
    Console.WriteLine("Edit: {0}", tempRowView["myCol"]);
    myMgr.EndCurrentEdit();
    Console.WriteLine("After EndCurrentEdit: {0}",
        tempRowView["myCol"]);
}
Private Sub CancelEdit()
    ' Gets the CurrencyManager which is returned when the 
    ' data source is a DataView.
    Dim myMgr As BindingManagerBase = _
    CType(BindingContext(myDataView), CurrencyManager)

    ' Gets the current row and changes a value. Then cancels the 
    ' edit and thereby discards the changes.
    Dim tempRowView As DataRowView = _
    CType(myMgr.Current, DataRowView)
    Console.WriteLine("Original: {0}", tempRowView("myCol"))
    tempRowView("myCol") = "These changes will be discarded"
    Console.WriteLine("Edit: {0}", tempRowView("myCol"))
    myMgr.CancelCurrentEdit()
    Console.WriteLine("After CanceCurrentlEdit: {0}", _
    tempRowView("myCol"))
End Sub

Private Sub EndEdit()
    ' Gets the CurrencyManager which is returned when the 
    ' data source is a DataView.
    Dim myMgr As BindingManagerBase = _
    CType(BindingContext(myDataView), CurrencyManager)

    ' Gets the current row and changes a value. Then ends the 
    ' edit and thereby keeps the changes.
    Dim tempRowView As DataRowView = _
    CType(myMgr.Current, DataRowView)
    Console.WriteLine("Original: {0}", tempRowView("myCol"))
    tempRowView("myCol") = "These changes will be kept"
    Console.WriteLine("Edit: {0}", tempRowView("myCol"))
    myMgr.EndCurrentEdit()
    Console.WriteLine("After EndCurrentEdit: {0}", _
    tempRowView("myCol"))
End Sub

備註

只有在資料來源實作 IEditableObject 介面時,才支援這個方法。 如果物件未實作 IEditableObject 介面,將不會捨棄對資料所做的變更。

CancelCurrentEdit呼叫 方法會導致 Format 事件發生。

適用於

另請參閱