Anteckning
Å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.
Ett kontrollmönster är en gränssnittsimplementering som exponerar en viss aspekt av en kontrolls funktioner för Microsoft UI Automation-klientprogram. Klienter använder egenskaper och metoder som exponeras via ett kontrollmönster för att hämta information om en viss funktion i kontrollen eller för att manipulera en viss aspekt av kontrollens beteende. Till exempel använder en kontroll som visar ett tabellgränssnitt Grid kontrollmönster för att exponera antalet rader och kolumner i tabellen och för att göra det möjligt för en klient att hämta objekt från tabellen.
UI Automation använder kontrollmönster för att representera vanliga kontrollbeteenden. Du kan till exempel använda Anropa kontrollmönster för kontroller som kan anropas, till exempel knappar, och kontrollmönstret Bläddra för kontroller som har rullningslister, till exempel listrutor, listvyer eller kombinationsrutor. Eftersom varje kontrollmönster representerar en separat funktion kan kontrollmönster kombineras för att beskriva den fullständiga uppsättning funktioner som stöds av en viss kontroll.
Obs
En aggregeringskontroll byggs upp med barnkontroller som tillhandahåller användargränssnittet för de funktioner som föräldrakontrollen exponerar, och föräldrakontrollen bör implementera alla kontrollmönster som vanligtvis är associerade med dess barnkontroller. I sin tur behöver dessa styrmönster inte implementeras av de underordnade kontrollerna.
Det här avsnittet innehåller följande avsnitt:
- Komponenter i UI-automationskontrollmönster
- kontrollmönster i leverantörer och klienter
- dynamiska kontrollmönster
- kontrollmönster och relaterade gränssnitt
- Relaterade ämnen
Mönsterkomponenter för UI Automation-kontroll
Kontrollmönster stöder metoder, egenskaper, händelser och relationer som krävs för att definiera en diskret funktion som är tillgänglig i en kontroll.
- Metoderna gör det möjligt för UI Automation-klienter att manipulera kontrollen.
- Egenskaperna och händelserna ger information om kontrollens funktioner och tillstånd.
- Relationen mellan ett UI Automation-element och dess överordnade, underordnade och syskon beskriver elementstrukturen i UI Automation-trädet.
Kontrollmönster relaterar till kontroller som liknar hur gränssnitten relaterar till COM-objekt (Component Object Model). I COM kan du fråga ett objekt för att fråga vilka gränssnitt det stöder och sedan använda dessa gränssnitt för att få åtkomst till funktioner. I UI Automation kan klienter fråga en kontroll vilka kontrollmönster som stöds och sedan interagera med kontrollen via egenskaper, metoder, händelser och strukturer som exponeras av kontrollmönstren som stöds.
Kontrollera mönster i leverantörer och klienter
UI Automation-leverantörer implementerar kontrollmönstergränssnitt för att exponera lämpligt beteende för en specifik funktion som stöds av kontrollen. Dessa gränssnitt exponeras inte direkt för klienter, men används av UI Automation-kärnan för att implementera en annan uppsättning klientgränssnitt. En provider exponerar till exempel rullningsfunktioner för UI Automation via IScrollProvideroch UI Automation exponerar funktionerna för klienter via IUIAutomationScrollPattern.
Mönster för dynamisk kontroll
Vissa kontroller stöder inte alltid samma uppsättning kontrollmönster. En redigeringskontroll med flera rader möjliggör till exempel endast lodrät rullning när den innehåller fler textrader än vad som kan visas i dess visningsbara område. Rullning inaktiveras när tillräckligt med text tas bort så att rullning inte längre krävs. I det här exemplet stöds IUIAutomationScrollPattern dynamiskt, beroende på hur mycket text som finns i redigeringsrutan.
Kontrollmönster och relaterade gränssnitt
I följande tabell beskrivs UI Automation-kontrollmönstren. Tabellen visar också de providergränssnitt som används för att implementera kontrollmönstren och de klientgränssnitt som används för att komma åt dem.
Namn | Providergränssnitt | Klientgränssnitt | Beskrivning |
---|---|---|---|
Anteckning | IAnnotationProvider | IUIAutomationAnnotationPattern | Används för att exponera egenskaperna för en anteckning i ett dokument, till exempel kommentarer i marginalen som är anslutna till dokumenttext. |
Dock | IDockProvider | IUIAutomationDockPattern | Används för kontroller som kan dockas i en dockningscontainer, till exempel verktygsfält eller verktygspaletter. |
Dra | IDragProvider | IUIAutomationDragPattern | Används för att stödja dragna kontroller eller kontroller med dragna objekt. |
DropTarget | IDropTargetProvider | IUIAutomationDropTargetPattern | Används för att stödja kontroller som kan vara målet för en dra och släpp-åtgärd. |
Expandera/Kollapsa | IExpandCollapseProvider | IUIAutomationExpandCollapsePattern | Används för kontroller som kan expanderas eller komprimeras, till exempel menyalternativ i ett program, till exempel Arkiv-menyn. |
Grid | IGridProvider | IUIAutomationGridPattern | Används för kontroller som stöder rutnätsfunktioner, till exempel storleksändring och flytt till en angiven cell, till exempel den stora ikonvyn i Utforskaren eller enkla tabeller i Microsoft Office Word. |
GridItem | IGridItemProvider | IUIAutomationGridItemPattern | Används för kontroller som har celler i rutnät. De enskilda cellerna bör ha stöd för GridItem-mönstret, till exempel varje cell i Windows Explorer-detaljvyn. |
Anropa | IInvokeProvider | IUIAutomationInvokePattern | Används för kontroller som kan anropas, till exempel knappar. |
Objektbehållare | IItemContainerProvider | IUIAutomationItemContainerPattern | Används för kontroller som kan innehålla andra objekt. |
LegacyIAccessible | ILegacyIAccessibleProvider | IUIAutomationLegacyIAccessiblePattern | Används för att exponera egenskaper och metoder för Microsoft Active Accessibility för UI Automation-klienter. |
MultipleView | IMultipleViewProvider | IUIAutomationMultipleViewPattern | Används för kontroller som kan växla mellan flera representationer av samma uppsättning information, data eller underordnade objekt, till exempel en listvykontroll där data är tillgängliga i miniatyrbilder, brickor, ikoner, listor eller detaljvyer. |
ObjectModel | IObjectModelProvider | IUIAutomationObjectModelPattern | Används för att exponera en pekare för den underliggande objektmodellen i ett dokument. Med det här kontrollmönstret kan en klient navigera från ett UI Automation-element till den underliggande objektmodellen. |
RangeValue | IRangeValueProvider | IUIAutomationRangeValuePattern | Används för kontroller som har ett värdeintervall. En spinnarkontroll som visar år kan till exempel ha ett intervall på 1900–2010, medan en rotationskontroll som visar månader skulle ha ett intervall på 1–12. |
rulla | IScrollProvider | IUIAutomationScrollPattern | Används för kontroller som kan rulla när det finns mer information än vad som kan visas i kontrollens visningsområde. |
ScrollItem | IScrollItemProvider | IUIAutomationScrollItemPattern | Används för kontroller som har enskilda objekt i en lista som rullar, till exempel en listkontroll i en kombinationsrutekontroll. |
val | ISelectionProvider | IUIAutomationSelectionPattern | Används för att välja containerkontroller, till exempel listrutor och kombinationsrutor. |
Valobjekt | ISelectionItemProvider | IUIAutomationSelectionItemPattern | Används för enskilda objekt i markeringscontainerkontroller, till exempel listrutor och kombinationsrutor. |
kalkylblad | ISpreadsheetProvider | IUIAutomationSpreadsheetPattern | Används för att exponera innehållet i ett kalkylblad eller annat rutnätsbaserat dokument. Kontroller som implementerar kalkylbladskontrollmönstret bör också implementera rutnätskontrollmönstret. |
Kalkylbladsobjekt | ISpreadsheetItemProvider | IUIAutomationSpreadsheetItemPattern | Används för att exponera egenskaperna för en cell i ett kalkylblad eller annat rutnätsbaserat dokument. Kontroller som implementerar KalkylbladItem-kontrollmönstret bör också implementera GridItem-kontrollmönstret. |
formatmallar | IStylesProvider | IUIAutomationStylesPattern | Används för att beskriva ett gränssnittselement som har ett specifikt format, fyllningsfärg, fyllningsmönster eller form. |
SynkroniseradInmatning | ISynchronizedInputProvider | IUIAutomationSynchronizedInputPattern | Används för kontroller som accepterar tangentbords- eller musinmatning. |
tabell | ITableProvider | IUIAutomationTablePattern | Används för kontroller som har ett rutnät och rubrikinformation. |
TableItem | ITableItemProvider | IUIAutomationTableItemPattern | Används för objekt i en tabell. |
Text | ITextProvider | IUIAutomationTextPattern | Används för att redigera kontroller och dokument som visar textinformation. |
TextEdit | ITextEditProvider | IUIAutomationTextEditPattern | Används för att redigera kontroller som ändrar text programmatiskt, till exempel en kontroll som utför automatisk korrigering eller aktiverar indatasammansättning. |
TextChild | ITextChildProvider | IUIAutomationTextChildPattern | Används för att komma åt ett elements närmaste överordnade objekt som stöder Text-kontrollmönstret. |
TextRange | ITextRangeProvider | IUIAutomationTextRange | Används för att hämta textinnehåll, textattribut och inbäddade objekt från textbaserade kontroller som redigeringskontroller och dokument. |
Växla | IToggleProvider | IUIAutomationTogglePattern | Används för kontroller där tillståndet kan växlas, till exempel kryssrutor och kontrollerbara menyalternativ. |
Transformera | ITransformProvider | IUIAutomationTransformPattern | Används för kontroller som kan storlekändras, flyttas och roteras. Typiska användningsområden för kontrollmönstret Transformera finns i designers, formulär, grafiska redigeringsprogram och ritningsprogram. |
Värde | IValueProvider | IUIAutomationValuePattern | Används för kontroller som har ett värde som inte ligger inom ett angivet intervall, till exempel en datum-tid-väljare. |
VirtualiseradArtikel | IVirtualizedItemProvider | IUIAutomationVirtualizedItemPattern | Används för kontroller som fungerar med objekt i en virtuell lista. |
fönster | IWindowProvider | IUIAutomationWindowPattern | Används för fönster. Exempel är programfönster på den översta nivån, underordnade MDI-fönster (multiple-document interface) och dialogrutor. |
Relaterade ämnen
-
konceptuell