IEditableCollectionView Interface
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Definieert methoden en eigenschappen die een CollectionView implementeert om bewerkingsmogelijkheden voor een verzameling te bieden.
public interface class IEditableCollectionView
public interface IEditableCollectionView
type IEditableCollectionView = interface
Public Interface IEditableCollectionView
- Afgeleid
Voorbeelden
In het volgende voorbeeld ziet u hoe u een item aan een verzameling toevoegt met behulp van methoden die zijn gedefinieerd door IEditableCollectionView. Deze toepassing geeft een lijst weer met te koop items en geeft de gebruiker de mogelijkheid om een item toe te voegen, te bewerken of te verwijderen. Wanneer de gebruiker een item toevoegt of bewerkt, wordt de gebruiker door een formulier gevraagd een nieuw item in te voeren. Als de gebruiker het formulier indient, wordt het item doorgevoerd in de verzameling. Als de gebruiker het formulier annuleert, wordt het item verwijderd. Zie Changing a Collection by Using IEditableCollectionView Sample voor het volledige voorbeeld.
IEditableCollectionView editableCollectionView =
itemsControl.Items;
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()
{
//Create a new item to be added to the collection.
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
Opmerkingen
Wanneer de IEditableCollectionView interface wordt geïmplementeerd in een verzamelingsweergave, kunt u de onderliggende verzameling rechtstreeks wijzigen, als hiermee wijzigingen kunnen worden aangebracht, met behulp van de methoden en eigenschappen die IEditableCollectionView beschikbaar worden gemaakt, ongeacht het type van de verzameling.
De typen ItemCollection, BindingListCollectionView en ListCollectionView zijn de typen die worden verzonden met Windows Presentation Foundation (WPF) die overnemen van CollectionView. Deze typen implementeren ook de IEditableCollectionView, zodat u een verzameling kunt bewerken die een van deze typen gebruikt. ItemCollection, met name wordt vaak gebruikt omdat de ItemsControl.Items eigenschap een ItemCollection.
Eigenschappen
| Name | Description |
|---|---|
| CanAddNew |
Hiermee wordt een waarde opgehaald die aangeeft of een nieuw item aan de verzameling kan worden toegevoegd. |
| CanCancelEdit |
Hiermee wordt een waarde opgehaald die aangeeft of de verzamelingsweergave wijzigingen in behandeling kan negeren en de oorspronkelijke waarden van een bewerkt object kan herstellen. |
| CanRemove |
Hiermee wordt een waarde opgehaald die aangeeft of een item uit de verzameling kan worden verwijderd. |
| CurrentAddItem |
Hiermee haalt u het item op dat wordt toegevoegd tijdens de huidige transactie voor toevoegen. |
| CurrentEditItem |
Hiermee haalt u het item op in de verzameling die wordt bewerkt. |
| IsAddingNew |
Hiermee wordt een waarde opgehaald die aangeeft of een add-transactie wordt uitgevoerd. |
| IsEditingItem |
Hiermee wordt een waarde opgehaald die aangeeft of een bewerkingstransactie wordt uitgevoerd. |
| NewItemPlaceholderPosition |
Hiermee haalt u de positie van de tijdelijke aanduiding voor het nieuwe item in de verzamelingsweergave op of stelt u deze in. |
Methoden
| Name | Description |
|---|---|
| AddNew() |
Hiermee voegt u een nieuw item toe aan de verzameling. |
| CancelEdit() |
Hiermee beëindigt u de bewerkingstransactie en herstelt u, indien mogelijk, de oorspronkelijke waarde naar het item. |
| CancelNew() |
Hiermee wordt de transactie voor toevoegen beëindigd en wordt het in behandeling zijnde nieuwe item verwijderd. |
| CommitEdit() |
Hiermee wordt de bewerkingstransactie beëindigd en worden de wijzigingen in behandeling opgeslagen. |
| CommitNew() |
Hiermee wordt de transactie voor toevoegen beëindigd en wordt het nieuwe item in behandeling opgeslagen. |
| EditItem(Object) |
Hiermee begint u een bewerkingstransactie van het opgegeven item. |
| Remove(Object) |
Hiermee verwijdert u het opgegeven item uit de verzameling. |
| RemoveAt(Int32) |
Hiermee verwijdert u het item op de opgegeven positie uit de verzameling. |