IEditableCollectionView.EditItem(Object) 메서드

정의

지정된 항목의 편집 트랜잭션을 시작합니다.

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

매개 변수

item
Object

편집할 항목입니다.

예제

다음 예제에서는 사용자에게 기존 항목을 편집하라는 메시지를 표시하는 양식을 만듭니다. 사용자가 양식을 제출하면 변경 내용이 컬렉션에 커밋됩니다. 사용자가 양식을 취소하면 변경 내용이 삭제됩니다. 전체 샘플은 IEditableCollectionView 샘플을 사용하여 컬렉션 교환 참조하세요.

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

적용 대상