IEditableCollectionView.EditItem(Object) IEditableCollectionView.EditItem(Object) IEditableCollectionView.EditItem(Object) IEditableCollectionView.EditItem(Object) Method

정의

지정된 항목에 대해 편집 트랜잭션을 시작합니다.Begins an edit transaction of the specified item.

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

매개 변수

item
Object Object Object Object

편집할 항목입니다.The item to edit.

예제

다음 예제에서는 기존 항목을 편집 하 라는 메시지는 폼을 만듭니다.The following example creates a form that prompts the user to edit an existing item. 사용자가 폼을 제출 하는 경우 변경 내용을 컬렉션에 커밋됩니다.If the user submits the form, the changes are committed to the collection. 사용자가 폼을 취소 하는 경우 변경 내용이 삭제 됩니다.If the user cancels the form, the changes are discarded. 전체 샘플을 보려면 IEditableCollectionView 예제를 사용 하 여 컬렉션을 변경 합니다.For the entire sample, see Changing a Collection by Using IEditableCollectionView Sample .

IEditableCollectionView editableCollectionView =
            itemsControl.Items as IEditableCollectionView;

// Create a window that prompts the user to edit an item.
ChangeItemWindow win = 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 ((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

적용 대상