Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Anmärkning
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 ISelectionProvider, inklusive information om händelser och egenskaper. Länkar till ytterligare referenser visas i slutet av ämnet.
Kontrollmönstret SelectionPattern används för att stödja kontroller som fungerar som containrar för en samling av valbara underordnade objekt. Barnen av detta element måste implementera ISelectionItemProvider. Exempel på kontroller som implementerar det här 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 mönstret Urvalskontroll:
Kontroller som implementerar ISelectionProvider tillåter att antingen enstaka eller flera underordnade objekt väljs. Till exempel stöder listruta, listvy och trädvy flera val medan kombinationsruta, skjutreglage och alternativknappgrupp stöder enkel markering.
Kontroller som har ett minsta, maximalt och kontinuerligt intervall, till exempel skjutreglaget Volym , bör implementeras IRangeValueProvider i stället för ISelectionProvider.
Enkeltvalskontroller som hanterar underordnade kontroller som implementerar IRawElementProviderFragmentRoot, till exempel skjutreglaget Skärmupplösning i dialogrutan Visningsegenskaper eller urvalskontrollen färgväljare från Microsoft Word (visas nedan), bör implementera ISelectionProvider; deras underordnade bör implementera både IRawElementProviderFragment och ISelectionItemProvider.
Exempel på mappning av färgrutesträngar
- Menyer stöder inte SelectionPattern. Om du arbetar med menyalternativ som innehåller både grafik och text (till exempel förhandsgranskningsfönstrets objekt i menyn Visa i Microsoft Outlook) och behöver förmedla tillstånd bör du implementera IToggleProvider.
Obligatoriska medlemmar för ISelectionProvider
Följande egenskaper, metoder och händelser krävs för ISelectionProvider gränssnittet.
| Obligatoriska medlemmar | Typ | Noteringar |
|---|---|---|
| CanSelectMultiple | Fastighet | Bör stödja ändrade händelser för egenskapen med hjälp av AddAutomationPropertyChangedEventHandler och RemoveAutomationPropertyChangedEventHandler. |
| IsSelectionRequired | Fastighet | Bör stödja ändrade händelser för egenskapen med hjälp av AddAutomationPropertyChangedEventHandler och RemoveAutomationPropertyChangedEventHandler. |
| GetSelection | Metod | Ingen |
| InvalidatedEvent | Evenemang | Utlöses när ett val i en container har ändrats avsevärt och kräver att fler additions- och borttagningshändelser skickas än vad konstanten InvalidateLimit tillåter. |
Egenskaperna IsSelectionRequired och CanSelectMultiple kan vara dynamiska. Det ursprungliga tillståndet för en kontroll kanske till exempel inte har några objekt valda som standard, vilket anger att IsSelectionRequired är false. Men när ett objekt har valts måste kontrollen alltid ha minst ett objekt markerat. På samma sätt kan en kontroll i sällsynta fall tillåta att flera objekt väljs vid initiering, men därefter endast tillåta att enskilda val görs.
Undantag
Leverantörer måste utlösa följande undantag.
| Undantagstyp | Tillstånd |
|---|---|
| ElementNotEnabledException | Om kontrollen inte är aktiverad. |
| InvalidOperationException | Om kontrollen är dold. |
Se även
- Översikt över UI Automation-kontrollmönster
- Stöd Kontrollmönster i en automatiseringsleverantör för användargränssnitt
- UI Automation-kontrollmönster för klienter
- Implementera selektionsobjektskontrollmönstret för UI-automatisering
- Översikt över automationsträd för användargränssnittet
- Använda cachelagring i UI Automation