IEditableCollectionView.CommitEdit Methode

Definition

Beendet die Bearbeitungstransaktion und speichert die ausstehenden Änderungen.

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

Beispiele

Im folgenden Beispiel wird ein Formular erstellt, das den Benutzer auffordert, ein vorhandenes Element zu bearbeiten. Wenn der Benutzer das Formular sendet, ruft das Beispiel auf CommitEdit , um die Änderungen an der Auflistung zu speichern. Wenn der Benutzer das Formular abbricht, ruft das Beispiel auf CancelEdit , um die Änderungen zu verwerfen. Das gesamte Beispiel finden Sie unter Ändern einer Auflistung mithilfe des IEditableCollectionView-Beispiels.

IEditableCollectionView editableCollectionView =
            itemsControl.Items;

// Create a window that prompts the user to edit an item.
ChangeItemWindow win = new();
editableCollectionView.EditItem(itemsControl.SelectedItem);
win.DataContext = itemsControl.SelectedItem;

// If the user submits the new item, commit the changes.
// If the user cancels the edits, discard the changes. 
if ((bool)win.ShowDialog())
{
    editableCollectionView.CommitEdit();
}
else
{
    // If the objects in the collection can discard pending 
    // changes, calling IEditableCollectionView.CancelEdit
    // will revert the changes. Otherwise, you must provide
    // your own logic to revert the changes in the object.

    if (!editableCollectionView.CanCancelEdit)
    {
        // Provide logic to revert changes.
    }

    editableCollectionView.CancelEdit();
}
Dim editableCollectionView As IEditableCollectionView = TryCast(itemsControl.Items, IEditableCollectionView)

' Create a window that prompts the user to edit an item.
Dim win As New ChangeItemWindow()
editableCollectionView.EditItem(itemsControl.SelectedItem)
win.DataContext = itemsControl.SelectedItem

' If the user submits the new item, commit the changes.
' If the user cancels the edits, discard the changes. 
If CBool(win.ShowDialog()) Then
    editableCollectionView.CommitEdit()
Else
    ' If the objects in the collection can discard pending 
    ' changes, calling IEditableCollectionView.CancelEdit
    ' will revert the changes. Otherwise, you must provide
    ' your own logic to revert the changes in the object.

    If Not editableCollectionView.CanCancelEdit Then
        ' Provide logic to revert changes.
    End If

    editableCollectionView.CancelEdit()
End If

Gilt für: