Implementera användargränssnittets automationsvärdekontrollmönster

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 IValueProvider, inklusive information om händelser och egenskaper. Länkar till ytterligare referenser visas i slutet av ämnet.

Kontrollmönstret ValuePattern används för att stödja kontroller som har ett inbyggt värde som inte sträcker sig över ett intervall och som kan representeras som en sträng. Den här strängen kan redigeras, beroende på kontrollen och dess inställningar. Exempel på kontroller som implementerar det här mönstret finns i Kontrollera mönstermappning för UI Automation-klienter.

Riktlinjer och konventioner för implementering

Observera följande riktlinjer och konventioner när du implementerar värdekontrollmönstret:

  • Kontroller som ListItem och TreeItem måste stödja ValuePattern om värdet för något av objekten kan redigeras, oavsett kontrollens aktuella redigeringsläge. Den överordnade kontrollen måste också ha stöd för ValuePattern om de underordnade objekten är redigerbara.

Redigerbart listobjekt. Exempel på ett redigerbart listobjekt

  • Redigeringskontroller med en rad stödjer programmerbar åtkomst till deras innehåll genom att implementera IValueProvider. Redigeringskontroller med flera rader implementerar IValueProviderdock inte . I stället ger de åtkomst till sitt innehåll genom att implementera ITextProvider.

  • Om du vill hämta textinnehållet i en redigeringskontroll med flera rader måste kontrollen implementera ITextProvider. Har dock ITextProvider inte stöd för att ange värdet för en kontroll.

  • IValueProvider stöder inte hämtning av formateringsinformation eller delsträngsvärden. Implementera ITextProvider i dessa scenarier.

  • IValueProvider måste implementeras med kontroller, till exempel markeringskontrollen för färgväljaren från Microsoft Word (visas nedan), som stöder strängmappning mellan ett färgvärde (till exempel "gul") och en motsvarande intern RGB-struktur.

Färgväljare där gult är markerat. Exempel på mappning av färgrutesträngar

Obligatoriska medlemmar för IValueProvider

Följande egenskaper och metoder krävs för att implementera IValueProvider.

Obligatoriska medlemmar Medlemstyp Noteringar
IsReadOnlyProperty Fastighet Ingen
ValueProperty Fastighet Ingen
SetValue Metod Ingen

Undantag

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

Undantagstyp Tillstånd
InvalidOperationException SetValue

– Om språkspecifik information skickas till en kontroll i ett felaktigt format, till exempel ett felaktigt formaterat datum.
ArgumentException SetValue

– Om ett nytt värde inte kan konverteras från en sträng till ett format som kontrollen känner igen.
ElementNotEnabledException SetValue

– När ett försök görs att manipulera en kontroll som inte är aktiverad.

Se även