Delen via


Aantekeningsbeheerpatroon

Beschrijft richtlijnen en conventies voor het implementeren van IAnnotationProvider, inclusief informatie over eigenschappen en methoden. Het aantekeningspatroon wordt gebruikt om de eigenschappen van een aantekening in een document beschikbaar te maken.

Een voorbeeld is een opmerkingballon die zich in de marge van een document bevindt en is verbonden met een documenttekst of een spreadsheetcel.

In de volgende afbeelding ziet u een voorbeeld van een aantekening. Zie Besturingstypen en de ondersteunde besturingspatronenvoor voorbeelden van besturingselementen die dit besturingspatroon implementeren.

schermafbeelding met een baloen met opmerkingen in een document

Dit onderwerp bevat de volgende secties.

Implementatierichtlijnen en conventies

Let bij het implementeren van het aantekening controlepatroon op de volgende richtlijnen en conventies:

  • Er zijn veel verschillende soorten aantekeningen. Het headerbestand UIAutomationClient.h definieert een set benoemde constante waarden waarmee de typen aantekeningen worden geïdentificeerd die door Microsoft UI Automation worden ondersteund. Zie Type-id's van aantekeningenvoor meer informatie.
  • Als u AnnotationType_Unknowngebruikt, moet u de eigenschap IAnnotationProvider::AnnotationTypeName implementeren om clients in staat te stellen de naam van het aantekeningstype te detecteren. U hoeft geen AnnotationTypeName- te implementeren voor een standaardaantekeningstype omdat UI Automation een standaardnaam biedt, maar u kunt deze implementeren als u de standaardnaam wilt overschrijven.
  • De eigenschap IAnnotationProvider::Author is optioneel.
  • De eigenschap IAnnotationProvider::D ateTime is optioneel.
  • De eigenschap IAnnotationProvider::Target is vereist omdat deze een aantekening koppelt aan een UI-element, zodat een client vanuit de aantekening terug kan navigeren naar het ui-element waarnaar de aantekening verwijst.
  • Omdat aantekeningen veel verschillende vormen kunnen aannemen, definieert de IAnnotationProvider interface geen eigenschap voor het opslaan van de waarde of tekst van een aantekening. Een eenvoudige aantekening moet de IValueProvider interface beschikbaar maken en de eigenschap IValueProvider::Value moet een alleen-lezenwaarde retourneren die de aantekeningstekst aangeeft. Een uitgebreidere aantekening moet de ITextProvider-interface beschikbaar maken om uitgebreidere tekst aan clients te bieden.
  • Navigeren van een UI-element naar een aantekening op het element hangt als volgt af van het type element dat wordt geannoteerd:
  • Voor sommige soorten aantekeningen is geen volledige implementatie van de IAnnotationProvider interface vereist. Een eenvoudige indicator voor spelfouten kan bijvoorbeeld worden vertegenwoordigd door de interface ITextRangeProvider een AnnotationTypes tekstkenmerk van AnnotationType_SpellingErrorte laten retourneren en een null-waarde voor het AnnotationObjects tekstkenmerk.
  • Het kan handig zijn om de IAnnotationProvider interface te implementeren op een UI-element dat niet zichtbaar is. U kunt bijvoorbeeld een niet-zichtbaar UI Automation-element maken dat IAnnotationProvider implementeert om uitgebreide informatie over een grammaticafout op te geven.
  • Aantekeningen in een besturingselement op basis van tekst kunnen complex zijn als het besturingselement overlappende opmerkingen bevat. Gebruik de volgende richtlijnen om complexe aantekeningen af te handelen:

Vereiste leden voor IAnnotationProvider

De volgende eigenschappen zijn vereist voor het implementeren van de IAnnotationProvider interface.

Vereiste leden Type lid Notities
AnnotationTypeId Eigenschap Geen.
AnnotationTypeName- Eigenschap Geen.
maken Eigenschap Geen.
DateTime- Eigenschap Geen.
doel Eigenschap Geen.

 

Dit besturingspatroon heeft geen gekoppelde gebeurtenissen.

besturingstypen en de ondersteunde besturingspatronen

Overzicht van UI Automation-besturingspatronen

Overzicht van UI Automation Tree