Implementera UI Automation Value Control Pattern

Kommentar

Den här dokumentationen System.Windows.Automation är avsedd för .NET Framework-utvecklare som vill använda de hanterade UI Automation-klasserna som definierats i namnområdet. 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 ValuePattern för om de underordnade objekten kan redigeras.

Redigerbart listobjekt. Exempel på ett redigerbart listobjekt

  • Redigeringskontroller med en rad stöder programmatisk åtkomst till innehållet 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 med gult markerat. Exempel på färgrutesträngsmappning

Obligatoriska medlemmar för IValueProvider

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

Obligatoriska medlemmar Medlemstyp Kommentar
IsReadOnlyProperty Property Ingen
ValueProperty Property Ingen
SetValue Metod Ingen

Undantag

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

Undantagstyp Villkor
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