Stöd för användargränssnittsautomatisering för kalenderkontrolltypen

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 information om UI Automation-stöd för kalenderkontrolltypen. I UI Automation är en kontrolltyp en uppsättning villkor som en kontroll måste uppfylla för att kunna använda egenskapen ControlTypeProperty . Villkoren innehåller specifika riktlinjer för UI Automation-trädstruktur, UI Automation-egenskapsvärden, kontrollmönster och UI Automation-händelser.

Med kalenderkontroller kan en användare enkelt fastställa datumet och välja andra datum.

I följande avsnitt definieras den nödvändiga UI Automation-trädstrukturen, egenskaperna, kontrollmönstren och händelserna för kontrolltypen Kalender. Kraven för användargränssnittsautomatisering gäller för alla kalenderkontroller, oavsett om det gäller Windows Presentation Foundation (WPF), Win32 eller Windows Forms.

Obligatorisk trädstruktur för användargränssnittsautomatisering

Följande tabell visar kontrollvyn och innehållsvyn för UI Automation-trädet som gäller för kalenderkontroller och beskriver vad som kan finnas i varje vy. Mer information om UI Automation-trädet finns i Översikt över UI Automation Tree.

Kontrollvy Innehållsvy
Kalender

  • DataGrid

    • Rubrik (0 eller 1)
    • HeaderItem (0 eller 7; kvantitet beror på hur många dagar som visas i kolumner)
    • ListItem (kvantitet beror på hur många dagar som visas)
    • Knapp (0 eller 2; för växling av kalendervy)
Kalender

– ListItem (kvantitet beror på hur många dagar som visas)

Kalenderkontroller kan representeras i många olika former i användargränssnittet. De enda garanterade kontrollerna som finns i kontrollvyn i UI Automation-trädet är kontrollerna för datarutnät, sidhuvud, rubrikobjekt och listobjekt.

Nödvändiga egenskaper för UI Automation

I följande tabell visas de UI Automation-egenskaper vars värde eller definition är särskilt relevant för kalenderkontrollerna. Mer information om egenskaper för UI Automation finns i UI Automation Properties for Clients (Egenskaper för gränssnittsautomatisering för klienter).

UI Automation-egenskap Värde Noteringar
AutomationIdProperty Se anteckningar. Värdet för den här egenskapen måste vara unikt för alla kontroller i ett program.
BoundingRectangleProperty Se anteckningar. Den yttersta rektangeln som innehåller hela kontrollen.
ClickablePointProperty Se anteckningar. Stöds om det finns en rektangel för avgränsning. Om inte varje punkt i avgränsningsrektangeln är klickbar och du utför specialiserad träfftestning, bör du åsidosätta och ange en klickbar punkt.
ControlTypeProperty Kalender Det här värdet är detsamma för alla gränssnittsramverk.
IsContentElementProperty Sann Kalenderkontrollen ingår alltid i innehållsvyn i UI Automation-trädet.
IsControlElementProperty Sann Kalenderkontrollen ingår alltid i kontrollvyn för UI Automation-trädet.
IsKeyboardFocusableProperty Se anteckningar. Om kontrollen kan få tangentbordsfokus måste den ha stöd för den här egenskapen.
LabeledByProperty Se anteckningar. Dokumentkontrollens etikett. Vanligtvis används dokumentets rubrik.
LocalizedControlTypeProperty "kalender" Lokaliserad sträng som motsvarar kontrolltypen Kalender.
NameProperty Se anteckningar. Kalenderkontrollen hämtar vanligtvis sitt namn från dagens datum.

Nödvändiga UI Automation-kontrollmönster

I följande tabell visas de UI Automation-kontrollmönster som krävs för att stödjas av alla kalenderkontroller. Mer information om kontrollmönster finns i UI Automation Control Patterns Overview.

Kontrollmönster/mönsteregenskap Stöd Noteringar
IGridProvider Ja Kalenderkontrollen stöder alltid rutnätsmönstret eftersom dagarna inom en månad är objekt som kan navigeras rumsligt.
IScrollProvider Det beror på De flesta kalenderkontroller har stöd för att vända vyn efter sida. Rullningsmönstret rekommenderas för att stödja sidväxlingsnavigering.
ISelectionProvider Det beror på De flesta kalenderkontroller behåller en viss dag, månad eller år som ett val av underelementet. Vissa kalendrar kan flervalsväljas och andra kan bara enkelvalväljas.
ITableProvider Ja Kalenderkontrollen har alltid en rubrik i underträdet för veckodagarna, vilket innebär att tabellmönstret måste stödjas.
IValueProvider Nej Mönstret Värdekontroll är inte nödvändigt för kalenderkontroller eftersom du inte kan ange värdet direkt på kontrollen. Om ett specifikt datum är associerat med kontrollen ska informationen anges av urvalskontrollmönstret.

Nödvändiga UI Automation-händelser

I följande tabell visas de UI Automation-händelser som krävs för att stödjas av alla kalenderkontroller. Mer information om händelser finns i UI Automation Events Overview.

UI Automation-händelse Stöd Noteringar
AutomationFocusChangedEvent Krävs Ingen
BoundingRectangleProperty egenskapsändringshändelse. Krävs Ingen
IsEnabledProperty egenskapsändringshändelse. Krävs Ingen
IsOffscreenProperty egenskapsändringshändelse. Krävs Ingen
LayoutInvalidatedEvent Krävs Ingen
StructureChangedEvent Krävs Ingen
CurrentViewProperty egenskapsändringshändelse. Det beror på Ingen
HorizontallyScrollableProperty egenskapsändringshändelse. Det beror på Om kontrollen stöder rullningskontrollmönstret måste den ha stöd för den här händelsen.
HorizontalScrollPercentProperty egenskapsändringshändelse. Det beror på Om kontrollen stöder rullningskontrollmönstret måste den ha stöd för den här händelsen.
HorizontalViewSizeProperty egenskapsändringshändelse. Det beror på Om kontrollen stöder rullningskontrollmönstret måste den ha stöd för den här händelsen.
VerticalScrollPercentProperty egenskapsändringshändelse. Det beror på Om kontrollen stöder rullningskontrollmönstret måste den ha stöd för den här händelsen.
VerticallyScrollableProperty egenskapsändringshändelse. Det beror på Om kontrollen stöder rullningskontrollmönstret måste den ha stöd för den här händelsen.
VerticalViewSizeProperty egenskapsändringshändelse. Det beror på Om kontrollen stöder rullningskontrollmönstret måste den ha stöd för den här händelsen.
InvalidatedEvent Krävs Ingen

Se även