Freigeben über


IEditableCollectionView Schnittstelle

Definition

Definiert von einer CollectionView implementierte Methoden und Eigenschaften, um Bearbeitungsfunktionen für eine Auflistung bereitzustellen.

public interface class IEditableCollectionView
public interface IEditableCollectionView
type IEditableCollectionView = interface
Public Interface IEditableCollectionView
Abgeleitet

Beispiele

Im folgenden Beispiel wird gezeigt, wie sie einer Auflistung mithilfe von definierter IEditableCollectionViewMethoden ein Element hinzufügen. Diese Anwendung zeigt eine Liste der zum Verkauf stehenden Elemente an und gibt dem Benutzer die Möglichkeit, ein Element hinzuzufügen, zu bearbeiten oder zu entfernen. Wenn der Benutzer ein Element hinzufügt oder bearbeitet, fordert ein Formular den Benutzer auf, ein neues Element einzugeben. Wenn der Benutzer das Formular übermittelt, wird das Element an die Sammlung gebunden. Wenn der Benutzer das Formular abbricht, wird das Element verworfen. Das gesamte Beispiel finden Sie unter Ändern einer Sammlung mithilfe von IEditableCollectionView-Beispiel.

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

Hinweise

Wenn eine Auflistungsansicht die IEditableCollectionView Schnittstelle implementiert, können Sie die zugrunde liegende Auflistung direkt ändern, wenn änderungen vorgenommen werden können, indem Sie die Methoden und Eigenschaften IEditableCollectionView verwenden, die verfügbar gemacht werden, unabhängig vom Typ der Sammlung.

Die Typen ItemCollection, BindingListCollectionViewund ListCollectionView sind die Typen, die mit Windows Presentation Foundation (WPF) geliefert werden, die von erbenCollectionView. Diese Typen implementieren auch die IEditableCollectionView, sodass Sie eine Auflistung bearbeiten können, die einen dieser Typen verwendet. ItemCollection, wird insbesondere häufig verwendet, da die ItemsControl.Items -Eigenschaft eine ItemCollectionist.

Eigenschaften

CanAddNew

Ruft einen Wert ab, der angibt, ob der Auflistung ein neues Element hinzugefügt werden kann.

CanCancelEdit

Ruft einen Wert ab, der angibt, ob die Auflistungsansicht ausstehende Änderungen verwerfen und die ursprünglichen Werte eines bearbeiteten Objekts wiederherstellen kann.

CanRemove

Ruft einen Wert ab, der angibt, ob ein Element aus der Auflistung entfernt werden kann.

CurrentAddItem

Ruft das Element ab, das während der aktuellen Hinzufügetransaktion hinzugefügt wird.

CurrentEditItem

Ruft das Element in der Auflistung ab, das gerade bearbeitet wird.

IsAddingNew

Ruft einen Wert ab, der angibt, ob gerade eine Transaktion zum Hinzufügen ausgeführt wird.

IsEditingItem

Ruft einen Wert ab, der angibt, ob gerade eine Transaktion zum Bearbeiten ausgeführt wird.

NewItemPlaceholderPosition

Ruft die Position des neuen Elementplatzhalters in der Auflistungsansicht ab oder legt diese fest.

Methoden

AddNew()

Fügt der Auflistung ein neues Element hinzu.

CancelEdit()

Beendet die Transaktion zum Bearbeiten und stellt, wenn möglich, den ursprünglichen Wert des Elements wieder her.

CancelNew()

Beendet die Transaktion zum Hinzufügen und verwirft das ausstehende neue Element.

CommitEdit()

Beendet die Transaktion zum Bearbeiten und speichert die ausstehenden Änderungen.

CommitNew()

Beendet die Transaktion zum Hinzufügen und speichert das ausstehende neue Element.

EditItem(Object)

Startet eine Transaktion zum Bearbeiten des angegebenen Elements.

Remove(Object)

Entfernt das angegebene Element aus der Auflistung.

RemoveAt(Int32)

Entfernt das Element an der angegebenen Position aus der Auflistung.

Gilt für: