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 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