IEditableCollectionView.CommitEdit IEditableCollectionView.CommitEdit IEditableCollectionView.CommitEdit IEditableCollectionView.CommitEdit Method

정의

편집 트랜잭션을 끝내고 보류 중인 변경 내용을 저장합니다.Ends the edit transaction and saves the pending changes.

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

예제

다음 예제에서는 기존 항목을 편집 하 라는 메시지는 폼을 만듭니다.The following example creates a form that prompts the user to edit an existing item. 이 예제에서는 호출 하는 사용자가 폼을 전송 CommitEdit 컬렉션에 저장 합니다.If the user submits the form, the example calls CommitEdit to save the changes to the collection. 예제를 호출 하는 사용자가 폼을 취소 CancelEdit 에 변경 내용을 취소 합니다.If the user cancels the form, the example calls CancelEdit to discard the changes. 전체 샘플을 보려면 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

적용 대상