IEditableCollectionView Interface

Définition

Définit les méthodes et propriétés implémentées par CollectionView pour offrir des fonctionnalités d’édition à une collection.

public interface class IEditableCollectionView
public interface IEditableCollectionView
type IEditableCollectionView = interface
Public Interface IEditableCollectionView
Dérivé

Exemples

L’exemple suivant montre comment ajouter un élément à une collection à l’aide de méthodes définies par IEditableCollectionView. Cette application affiche une liste d’éléments à vendre et donne à l’utilisateur la possibilité d’ajouter, de modifier ou de supprimer un élément. Lorsque l’utilisateur ajoute ou modifie un élément, un formulaire l’invite à entrer un nouvel élément. Si l’utilisateur envoie le formulaire, l’élément est commité dans la collection. Si l’utilisateur annule le formulaire, l’élément est ignoré. Pour l’ensemble de l’exemple, consultez Modification d’une collection à l’aide de l’exemple 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

Remarques

Lorsqu’une vue de collection implémente l’interface IEditableCollectionView , vous pouvez modifier directement la collection sous-jacente, si elle permet d’apporter des modifications, en utilisant les méthodes et les propriétés qui exposent, quel que IEditableCollectionView soit le type de la collection.

Les types ItemCollection, BindingListCollectionViewet ListCollectionView sont les types fournis avec Windows Presentation Foundation (WPF) qui héritent de CollectionView. Ces types implémentent également le IEditableCollectionView, afin que vous puissiez modifier une collection qui utilise l’un de ces types. ItemCollection, en particulier, est souvent utilisé, car la ItemsControl.Items propriété est un ItemCollection.

Propriétés

CanAddNew

Obtient une valeur qui indique si un nouvel élément peut être ajouté à la collection.

CanCancelEdit

Obtient une valeur qui indique si la vue de collection peut ignorer les modifications en attente et restaurer les valeurs d'origine d'un objet modifié.

CanRemove

Obtient une valeur qui indique si un élément peut être supprimé de la collection.

CurrentAddItem

Obtient l'élément ajouté pendant la transaction d'ajout en cours.

CurrentEditItem

Obtient l'élément de la collection qui est modifié.

IsAddingNew

Obtient une valeur qui indique si une transaction d'ajout est en cours.

IsEditingItem

Obtient une valeur qui indique si une transaction de modification est en cours.

NewItemPlaceholderPosition

Obtient ou définit la position du nouvel espace réservé d’élément dans la vue de collection.

Méthodes

AddNew()

Ajoute un nouvel élément à la collection.

CancelEdit()

Met fin à la transaction de modification et, si possible, restaure la valeur d’origine de l’élément.

CancelNew()

Met fin à la transaction d'ajout et ignore le nouvel élément en attente.

CommitEdit()

Met fin à la transaction de modification et enregistre les modifications en attente.

CommitNew()

Met fin à la transaction d'ajout et enregistre le nouvel élément en attente.

EditItem(Object)

Commence une transaction de modification de l’élément spécifié.

Remove(Object)

Supprime l’élément spécifié de la collection.

RemoveAt(Int32)

Supprime de la collection l'élément situé à la position spécifiée.

S’applique à