Delen via


Overzicht van Word-objectmodel

Wanneer u Word-oplossingen ontwikkelt in Visual Studio, communiceert u met het Word-objectmodel. Dit objectmodel bestaat uit klassen en interfaces die worden geleverd in de primaire interop-assembly voor Word en worden gedefinieerd in de Microsoft.Office.Interop.Word naamruimte.

Van toepassing op: De informatie in dit onderwerp is van toepassing op projecten op documentniveau en VSTO-invoegtoepassingsprojecten voor Word. Zie Functies die beschikbaar zijn voor de Office-toepassing en het projecttype voor meer informatie.

Dit onderwerp bevat een kort overzicht van het Word-objectmodel. Zie de documentatie over het gebruik van het Word-objectmodel voor meer informatie over het hele Word-objectmodel.

Zie de volgende onderwerpen voor informatie over het gebruik van het Word-objectmodel om specifieke taken uit te voeren:

Het Word-objectmodel begrijpen

Word bevat honderden objecten waarmee u kunt communiceren. Deze objecten zijn ingedeeld in een hiërarchie die de gebruikersinterface nauw volgt. Boven aan de hiërarchie bevindt zich het Application object. Dit object vertegenwoordigt het huidige exemplaar van Word. Het Application object bevat de Documentobjecten , Selectionen BookmarkRange objecten. Elk van deze objecten heeft veel methoden en eigenschappen waartoe u toegang hebt om het object te bewerken en ermee te communiceren.

In de volgende afbeelding ziet u één weergave van deze objecten in de hiërarchie van het Word-objectmodel.

Word Object Model graphic

Op het eerste gezicht lijken objecten elkaar te overlappen. Bijvoorbeeld, de Document en Selection objecten zijn beide leden van het Application object, maar het Document object is ook een lid van het Selection object. Zowel de Document- als Selection-objecten bevatten Bookmark- en Range-objecten. De overlapping bestaat omdat u op meerdere manieren toegang hebt tot hetzelfde type object. U past bijvoorbeeld opmaak toe op een Range object, maar mogelijk wilt u toegang krijgen tot het bereik van de huidige selectie, van een bepaalde alinea, van een sectie of van het hele document.

In de volgende secties worden de objecten op het hoogste niveau kort beschreven en hoe ze met elkaar communiceren. Deze objecten omvatten de volgende vijf:

  • Toepassingsobject

  • Document object

  • Selectieobject

  • Bereikobject

  • Bladwijzerobject

    Naast het Word-objectmodel bieden Office-projecten in Visual Studio hostitems en hostbesturingselementen waarmee sommige objecten in het Word-objectmodel worden uitgebreid. Hostitems en hostbesturingselementen gedragen zich zoals de Word-objecten die ze uitbreiden, maar ze hebben ook extra functionaliteit, zoals mogelijkheden voor gegevensbinding en extra gebeurtenissen. Zie Word automatiseren met behulp van uitgebreide objecten en hostitems en overzicht van hostbesturingselementen voor meer informatie.

Toepassingsobject

Het Application object vertegenwoordigt de Word-toepassing en is het bovenliggende element van alle andere objecten. De leden zijn meestal van toepassing op Word als geheel. U kunt de eigenschappen en methoden gebruiken om de Word-omgeving te beheren.

In VSTO-invoegtoepassingsprojecten hebt u toegang tot het Application object met behulp van het Application veld van de ThisAddIn klasse. Zie Programma-VSTO-invoegtoepassingen voor meer informatie.

In projecten op documentniveau hebt u toegang tot het Application object met behulp van de Application eigenschap van de ThisDocument klasse.

Document object

Het Document object is centraal in het programmeren van Word. Het vertegenwoordigt een document en alle inhoud ervan. Wanneer u een document opent of een nieuw document maakt, maakt u een nieuw Document object dat wordt toegevoegd aan de Documents verzameling van het Application object. Het document met de focus wordt het actieve document genoemd. Deze wordt vertegenwoordigd door de ActiveDocument eigenschap van het Application object.

De Office-ontwikkelhulpprogramma's in Visual Studio breiden het Document object uit door het Document type op te geven. Dit type is een hostitem waarmee u toegang krijgt tot alle functies van een Document object, extra evenementen en de mogelijkheid om beheerde controls toe te voegen.

Wanneer u een project op documentniveau maakt, hebt u toegang tot Document leden met behulp van de gegenereerde ThisDocument klasse in uw project. U kunt leden van het Document hostitem openen door gebruik te maken van de trefwoorden Me of this vanuit code in de ThisDocument-klasse, of door Globals.ThisDocument te gebruiken vanuit code buiten de ThisDocument-klasse. Zie Documentaanpassingen op programmagebied voor meer informatie. Als u bijvoorbeeld de eerste alinea in het document wilt selecteren, gebruikt u de volgende code.

this.Paragraphs[1].Range.Select();

In VSTO-invoegtoepassingsprojecten kunt u tijdens de uitvoeringstijd hostitems genereren Document. U kunt het gegenereerde hostitem gebruiken om besturingselementen toe te voegen aan het bijbehorende document. Zie Word-documenten en Excel-werkmappen tijdens runtime uitbreiden in VSTO-invoegtoepassingen voor meer informatie.

Selectieobject

Het Selection object vertegenwoordigt het gebied dat momenteel is geselecteerd. Wanneer u een bewerking uitvoert in de gebruikersinterface van Word, zoals vetgedrukte tekst, selecteert of markeert u de tekst en past u de opmaak toe. Het Selection object is altijd aanwezig in een document. Als er niets is geselecteerd, vertegenwoordigt deze de invoegpositie. Daarnaast kan een selectie meerdere tekstblokken omvatten die niet aaneengesloten zijn.

Bereikobject

Het Range object vertegenwoordigt een aaneengesloten gebied in een document en wordt gedefinieerd door een begintekenpositie en een eindtekenpositie. U bent niet beperkt tot één Range object. U kunt meerdere Range objecten in hetzelfde document definiëren. Een Range object heeft de volgende kenmerken:

  • Het kan bestaan uit alleen de invoegpositie, een tekstbereik of het hele document.

  • Het bevat niet-afdrukbare tekens, zoals spaties, tabtekens en alineamarkeringen.

  • Het kan het gebied zijn dat wordt vertegenwoordigd door de huidige selectie, of het kan een ander gebied vertegenwoordigen dan de huidige selectie.

  • Het is niet zichtbaar in een document, in tegenstelling tot een selectie, die altijd zichtbaar is.

  • Het wordt niet opgeslagen met een document en bestaat alleen terwijl de code wordt uitgevoerd.

    Wanneer u tekst aan het einde van een bereik invoegt, wordt het bereik automatisch uitgebreid met de ingevoegde tekst.

Inhoudsbeheerobjecten

Een ContentControl biedt een manier om de invoer en presentatie van tekst en andere typen inhoud in Word-documenten te beheren. Een ContentControl kan verschillende typen gebruikersinterfaces weergeven die geoptimaliseerd zijn voor gebruik in Word-documenten, zoals een opgemaakte tekstcontrole, een datumkiezer of een combobox. U kunt ook een ContentControl sjabloon gebruiken om te voorkomen dat gebruikers secties van het document of de sjabloon kunnen bewerken.

Visual Studio breidt het ContentControl object uit tot verschillende hostbesturingselementen. Terwijl in het ContentControl object een van de verschillende typen gebruikersinterfaces kan worden weergegeven die beschikbaar zijn voor inhoudsbesturingselementen, biedt Visual Studio een ander type voor elk inhoudsbesturingselement. Zo kunt u bijvoorbeeld een RichTextContentControl gebruiken om een besturingselement voor tekst met opmaak te maken, of een DatePickerContentControl gebruiken om een datumkiezer te maken. Deze hostbesturingselementen gedragen zich als de systeemeigen ContentControl, maar ze hebben extra gebeurtenissen en mogelijkheden voor gegevensbinding. Zie Inhoudsbesturingselementen voor meer informatie.

Bladwijzerobject

Het Bookmark object vertegenwoordigt een aaneengesloten gebied in een document, met zowel een beginpositie als een eindpositie. U kunt bladwijzers gebruiken om een locatie in een document te markeren of als een container voor tekst in een document. Een Bookmark object kan bestaan uit de invoegpositie of zo groot zijn als het hele document. A Bookmark heeft de volgende kenmerken die deze onderscheiden van het Range object:

  • U kunt de bladwijzer een naam opgeven tijdens het ontwerp.

  • Bookmark objecten worden opgeslagen met het document en worden dus niet verwijderd wanneer de code stopt of het document wordt gesloten.

  • Bladwijzers kunnen worden verborgen of zichtbaar worden gemaakt door de ShowBookmarks eigenschap van het View object in te stellen op false of true.

    Visual Studio breidt het Bookmark object uit door het Bookmark hostbeheer op te geven. Het Bookmark hostbesturingselement gedraagt zich als een systeemeigen Bookmark, maar heeft aanvullende gebeurtenissen en mogelijkheden voor gegevensbinding. U kunt gegevens binden aan een bladwijzerbesturingselement in een document op dezelfde manier als u gegevens koppelt aan een tekstvakbesturingselement op een Windows-formulier. Zie Bladwijzerbeheer voor meer informatie.

De documentatie voor het Word-objectmodel gebruiken

Voor volledige informatie over het Word-objectmodel, kunt u verwijzen naar de Word Primary Interop Assembly (PIA) referentie en de VBA (Visual Basic for Applications) objectmodelreferentie.

Referentie voor primaire interop-assembly

In de referentiedocumentatie van Word PIA worden de typen in de primaire interop-assembly voor Word beschreven. Deze documentatie is beschikbaar op de volgende locatie: Word 2010 primaire interop assembly-verwijzing.

Zie Overzicht van klassen en interfaces in de primaire assemblies van Office voor meer informatie over het ontwerp van de Word PIA, zoals de verschillen tussen klassen en interfaces in de PIA en hoe gebeurtenissen in de PIA worden geïmplementeerd.

VBA-objectmodelreferentie

Het VBA-objectmodel documenteert het Word-objectmodel omdat het wordt blootgesteld aan VBA-code. Zie de word 2010-objectmodelverwijzing voor meer informatie.

Alle objecten en leden in de verwijzing naar het VBA-objectmodel komen overeen met typen en leden in de Word PIA. Het documentobject in de naslaginformatie over het VBA-objectmodel komt bijvoorbeeld overeen met het Document object in word PIA. Hoewel de verwijzing naar het VBA-objectmodel codevoorbeelden biedt voor de meeste eigenschappen, methoden en gebeurtenissen, moet u de VBA-code in deze verwijzing vertalen naar Visual Basic of Visual C# als u deze wilt gebruiken in een Word-project dat u maakt met behulp van Visual Studio.