Dela via


Implementera mönstret för UI Automation SelectionItem-kontroll

Not

Den här dokumentationen är avsedd för .NET Framework-utvecklare som vill använda de hanterade UI Automation-klasserna som definierats i System.Windows.Automation namnrymd. Den senaste informationen om UI Automation finns i Windows Automation API: UI Automation.

Det här avsnittet innehåller riktlinjer och konventioner för att implementera ISelectionItemProvider, inklusive information om egenskaper, metoder och händelser. Länkar till ytterligare referenser visas i slutet av översikten.

SelectionItemPattern-kontrollmönstret används för att stödja kontroller som fungerar som enskilda, valbara underordnade objekt i containerkontroller som implementerar ISelectionProvider. Exempel på kontroller som implementerar SelectionItem-kontrollmönstret finns i Kontrollmönstermappning för UI Automation-klienter.

Riktlinjer och konventioner för implementering

Observera följande riktlinjer och konventioner när du implementerar kontrollmönstret Valobjekt:

Obligatoriska medlemmar för ISelectionItemProvider

Följande egenskaper, metoder och händelser krävs för att implementera ISelectionItemProvider.

Obligatoriska medlemmar Medlemstyp Anteckningar
CanSelectMultiple Egenskap Ingen
IsSelectionRequired Egenskap Ingen
GetSelection Metod Ingen
InvalidatedEvent Händelse Utlöses när ett val i en container har ändrats avsevärt och kräver att fler ElementSelectedEvent och ElementRemovedFromSelectionEvent händelser skickas än vad InvalidateLimit konstant tillåter.

Undantag

Leverantörer måste utlösa följande undantag.

Undantagstyp Tillstånd
InvalidOperationException När något av följande görs:

- RemoveFromSelection anropas på en enkelvalsbehållare där IsSelectionRequiredProperty = true och ett element redan är valt.
- RemoveFromSelection anropas på en container med flera val där IsSelectionRequiredProperty = true och endast ett element har valts.
- AddToSelection anropas på en container med enkelval där CanSelectMultipleProperty = false och ett annat element redan är markerade.

Se även