Поделиться через


IEditableCollectionView.AddNew Метод

Определение

Добавляет новый элемент в коллекцию.

public:
 System::Object ^ AddNew();
public object AddNew ();
abstract member AddNew : unit -> obj
Public Function AddNew () As Object

Возвращаемое значение

Новый элемент, добавленный в коллекцию.

Примеры

В следующем примере создается объект Window , предлагающий пользователю добавить новый элемент. Затем он вызывает AddNew для создания нового объекта и задает DataContextWindow для объекта значение этого объекта. Полный пример см. в разделе Изменение коллекции с помощью примера IEditableCollectionView.

IEditableCollectionView editableCollectionView = 
    itemsControl.Items as IEditableCollectionView; 

if (!editableCollectionView.CanAddNew)
{
    MessageBox.Show("You cannot add items to the list.");
    return;
}

// Create a window that prompts the user to enter a new
// item to sell.
ChangeItemWindow win = new ChangeItemWindow();

//Create a new item to be added to the collection.
win.DataContext = editableCollectionView.AddNew();

// If the user submits the new item, commit the new
// object to the collection.  If the user cancels 
// adding the new item, discard the new item.
if ((bool)win.ShowDialog())
{
    editableCollectionView.CommitNew();
}
else
{
    editableCollectionView.CancelNew();
}
Dim editableCollectionView As IEditableCollectionView = TryCast(itemsControl.Items, IEditableCollectionView)

If Not editableCollectionView.CanAddNew Then
    MessageBox.Show("You cannot add items to the list.")
    Return
End If

' Create a window that prompts the user to enter a new
' item to sell.
Dim win As New ChangeItemWindow()

'Create a new item to be added to the collection.
win.DataContext = editableCollectionView.AddNew()

' If the user submits the new item, commit the new
' object to the collection.  If the user cancels 
' adding the new item, discard the new item.
If CBool(win.ShowDialog()) Then
    editableCollectionView.CommitNew()
Else
    editableCollectionView.CancelNew()
End If

Комментарии

При вызове AddNew начинается транзакция добавления. Чтобы завершить транзакцию добавления, вызовите CommitNew или CancelNew . В представлении коллекции всегда отображается новый элемент. Любая фильтрация, сортировка или группирование, применяемые к представлению, применяется к новому элементу при CommitNew вызове .

Применяется к