IEditableCollectionView.EditItem(Object) Methode

Definition

Beginnt eine Bearbeitungstransaktion des angegebenen Elements.

public:
 void EditItem(System::Object ^ item);
public void EditItem(object item);
abstract member EditItem : obj -> unit
Public Sub EditItem (item As Object)

Parameter

item
Object

Das zu bearbeitende Element.

Beispiele

Im folgenden Beispiel wird ein Formular erstellt, das den Benutzer auffordert, ein vorhandenes Element zu bearbeiten. Wenn der Benutzer das Formular sendet, werden die Änderungen an der Sammlung übernommen. Wenn der Benutzer das Formular abbricht, werden die Änderungen verworfen. Das gesamte Beispiel finden Sie unter Changing a Collection by Using IEditableCollectionView Sample .

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: