Freigeben über


Word.ContentControlCollection class

Enthält eine Auflistung von Word. ContentControl-Objekte. Inhaltssteuerelemente sind gebundene und möglicherweise mit Beschriftungen versehene Bereiche in einem Dokument, die als Container für bestimmte Typen von Inhalt dienen. Einzelne Inhaltssteuerelemente können Inhalte wie Bilder, Tabellen oder Absätze mit formatiertem Text enthalten. Derzeit werden nur Rich-Text- und Nur-Text-Inhaltssteuerelemente unterstützt.

Extends

Hinweise

[ API-Satz: WordApi 1.1 ]

Beispiele

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/90-scenarios/doc-assembly.yaml

await Word.run(async (context) => {
    const contentControls: Word.ContentControlCollection = context.document.contentControls.getByTag("customer");
    contentControls.load("text");

    await context.sync();

    for (let i = 0; i < contentControls.items.length; i++) {
      contentControls.items[i].insertText("Fabrikam", "Replace");
    }

    await context.sync();
});

Eigenschaften

context

Der Anforderungskontext, der dem -Objekt zugeordnet ist. Dadurch wird der Prozess des Add-Ins mit dem Prozess der Office-Hostanwendung verbunden.

items

Ruft die geladenen untergeordneten Elemente in dieser Sammlung ab.

Methoden

getById(id)

Ruft ein Inhaltssteuerelement mithilfe der ID ab. Löst einen Fehler aus ItemNotFound , wenn in dieser Auflistung kein Inhaltssteuerelement mit dem Bezeichner vorhanden ist.

getByIdOrNullObject(id)

Ruft ein Inhaltssteuerelement mithilfe der ID ab. Wenn in dieser Auflistung kein Inhaltssteuerelement mit dem Bezeichner vorhanden ist, gibt diese Methode ein Objekt zurück, dessen isNullObject -Eigenschaft auf truefestgelegt ist. Weitere Informationen finden Sie unter *OrNullObject-Methoden und -Eigenschaften.

getByTag(tag)

Ruft die Inhaltssteuerelemente ab, die das angegebene Tag enthalten.

getByTitle(title)

Ruft die Inhaltssteuerelemente ab, die den angegebenen Titel enthalten.

getByTypes(types)

Ruft die Inhaltssteuerelemente ab, die über die angegebenen Typen verfügen.

getFirst()

Ruft das erste Inhaltssteuerelement in dieser Sammlung ab. Löst einen Fehler aus ItemNotFound , wenn diese Auflistung leer ist.

getFirstOrNullObject()

Ruft das erste Inhaltssteuerelement in dieser Sammlung ab. Wenn diese Auflistung leer ist, gibt diese Methode ein -Objekt zurück, dessen isNullObject -Eigenschaft auf truefestgelegt ist. Weitere Informationen finden Sie unter *OrNullObject-Methoden und -Eigenschaften.

getItem(id)

Ruft ein Inhaltssteuerelement anhand seiner ID ab.

load(options)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

load(propertyNames)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

load(propertyNamesAndPaths)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

toJSON()

Überschreibt die JavaScript-Methode toJSON() , um eine nützlichere Ausgabe bereitzustellen, wenn ein API-Objekt an JSON.stringify()übergeben wird. (JSON.stringifyruft wiederum die toJSON -Methode des Objekts auf, das an das Objekt übergeben wird.) Während das ursprüngliche Word.ContentControlCollection Objekt ein API-Objekt ist, gibt die toJSON Methode ein einfaches JavaScript-Objekt (typisiert als Word.Interfaces.ContentControlCollectionData) zurück, das ein "Items"-Array mit flachen Kopien aller geladenen Eigenschaften aus den Elementen der Auflistung enthält.

track()

Nachverfolgung des Objekts zwecks automatischer Anpassung auf der Grundlage der umgebenden Änderungen im Dokument. Dieser Aufruf ist eine Kurzform für context.trackedObjects.add(thisObject). Wenn Sie dieses Objekt über .sync Aufrufe hinweg und außerhalb der sequenziellen Ausführung eines ".run"-Batches verwenden und beim Festlegen einer Eigenschaft oder beim Aufrufen einer Methode für das Objekt den Fehler "InvalidObjectPath" erhalten, müssen Sie das Objekt der nachverfolgten Objektauflistung hinzufügen, als das Objekt zum ersten Mal erstellt wurde. Wenn dieses Objekt Teil einer Auflistung ist, sollten Sie auch die übergeordnete Auflistung nachverfolgen.

untrack()

Gibt den diesem Objekt zugewiesenen Arbeitsspeicher frei, wenn das Objekt zuvor nachverfolgt wurde. Dieser Aufruf ist die Kurzform für context.trackedObjects.remove(thisObject). Viele nachverfolgte Objekte verlangsamen die Ausführung der Hostanwendung, also achten Sie darauf, alle hinzugefügten Objekte nach abgeschlossener Verwendung freizugeben. Sie müssen aufrufen context.sync() , bevor die Speicherfreigabe wirksam wird.

Details zur Eigenschaft

context

Der Anforderungskontext, der dem -Objekt zugeordnet ist. Dadurch wird der Prozess des Add-Ins mit dem Prozess der Office-Hostanwendung verbunden.

context: RequestContext;

Eigenschaftswert

items

Ruft die geladenen untergeordneten Elemente in dieser Sammlung ab.

readonly items: Word.ContentControl[];

Eigenschaftswert

Details zur Methode

getById(id)

Ruft ein Inhaltssteuerelement mithilfe der ID ab. Löst einen Fehler aus ItemNotFound , wenn in dieser Auflistung kein Inhaltssteuerelement mit dem Bezeichner vorhanden ist.

getById(id: number): Word.ContentControl;

Parameter

id

number

Erforderlich. Eine Inhaltssteuerelement-ID.

Gibt zurück

Hinweise

[ API-Satz: WordApi 1.1 ]

Beispiele

// Run a batch operation against the Word object model.
await Word.run(async (context) => {

    // Create a proxy object for the content control that contains a specific id.
    const contentControl = context.document.contentControls.getById(30086310);

    // Queue a command to load the text property for a content control.
    contentControl.load('text');

    // Synchronize the document state by executing the queued commands,
    // and return a promise to indicate task completion.
    await context.sync();
    console.log('The content control with that Id has been found in this document.');
});

getByIdOrNullObject(id)

Ruft ein Inhaltssteuerelement mithilfe der ID ab. Wenn in dieser Auflistung kein Inhaltssteuerelement mit dem Bezeichner vorhanden ist, gibt diese Methode ein Objekt zurück, dessen isNullObject -Eigenschaft auf truefestgelegt ist. Weitere Informationen finden Sie unter *OrNullObject-Methoden und -Eigenschaften.

getByIdOrNullObject(id: number): Word.ContentControl;

Parameter

id

number

Erforderlich. Eine Inhaltssteuerelement-ID.

Gibt zurück

Hinweise

[ API-Satz: WordApi 1.3 ]

Beispiele

// Run a batch operation against the Word object model.
await Word.run(async (context) => {

    // Create a proxy object for the content control that contains a specific id.
    const contentControl = context.document.contentControls.getByIdOrNullObject(30086310);

    // Queue a command to load the text property for a content control.
    contentControl.load('text');

    // Synchronize the document state by executing the queued commands,
    // and return a promise to indicate task completion.
    await context.sync();
    if (contentControl.isNullObject) {
        console.log('There is no content control with that ID.')
    } else {
        console.log('The content control with that ID has been found in this document.');
    }
});

getByTag(tag)

Ruft die Inhaltssteuerelemente ab, die das angegebene Tag enthalten.

getByTag(tag: string): Word.ContentControlCollection;

Parameter

tag

string

Erforderlich. Ein für ein Inhaltssteuerelement festgelegtes Tag.

Gibt zurück

Hinweise

[ API-Satz: WordApi 1.1 ]

Beispiele

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/90-scenarios/doc-assembly.yaml

await Word.run(async (context) => {
    const contentControls: Word.ContentControlCollection = context.document.contentControls.getByTag("customer");
    contentControls.load("text");

    await context.sync();

    for (let i = 0; i < contentControls.items.length; i++) {
      contentControls.items[i].insertText("Fabrikam", "Replace");
    }

    await context.sync();
});

getByTitle(title)

Ruft die Inhaltssteuerelemente ab, die den angegebenen Titel enthalten.

getByTitle(title: string): Word.ContentControlCollection;

Parameter

title

string

Erforderlich. Der Titel eines Inhaltssteuerelements.

Gibt zurück

Hinweise

[ API-Satz: WordApi 1.1 ]

Beispiele

// Run a batch operation against the Word object model.
await Word.run(async (context) => {

    // Create a proxy object for the content controls collection that contains a specific title.
    const contentControlsWithTitle = context.document.contentControls.getByTitle('Enter Customer Address Here');

    // Queue a command to load the text property for all of content controls with a specific title.
    contentControlsWithTitle.load('text');

    // Synchronize the document state by executing the queued commands,
    // and return a promise to indicate task completion.
    await context.sync();
    if (contentControlsWithTitle.items.length === 0) {
        console.log(
            "There isn't a content control with a title of 'Enter Customer Address Here' in this document.");
    } else {
        console.log(
            "The first content control with the title of 'Enter Customer Address Here' has this text: " + 
            contentControlsWithTitle.items[0].text);
    }
});

// The Word-Add-in-DocumentAssembly sample has another example of using the getByTitle method.
// https://github.com/OfficeDev/Word-Add-in-DocumentAssembly

getByTypes(types)

Ruft die Inhaltssteuerelemente ab, die über die angegebenen Typen verfügen.

getByTypes(types: Word.ContentControlType[]): Word.ContentControlCollection;

Parameter

types

Word.ContentControlType[]

Erforderlich. Ein Array von Inhaltssteuerelementtypen.

Gibt zurück

Hinweise

[ API-Satz: WordApi 1.3 ]

getFirst()

Ruft das erste Inhaltssteuerelement in dieser Sammlung ab. Löst einen Fehler aus ItemNotFound , wenn diese Auflistung leer ist.

getFirst(): Word.ContentControl;

Gibt zurück

Hinweise

[ API-Satz: WordApi 1.3 ]

Beispiele

// Run a batch operation against the Word object model.
await Word.run(async (context) => {

    // Create a proxy object for the first content control in the document.
    const contentControl = context.document.contentControls.getFirstOrNullObject();

    // Queue a command to load the text property for a content control.
    contentControl.load('text');

    // Synchronize the document state by executing the queued commands,
    // and return a promise to indicate task completion.
    await context.sync();
    if (contentControl.isNullObject) {
        console.log('There are no content controls in this document.')
    } else {
        console.log('The first content control has been found in this document.');
    }
});

getFirstOrNullObject()

Ruft das erste Inhaltssteuerelement in dieser Sammlung ab. Wenn diese Auflistung leer ist, gibt diese Methode ein -Objekt zurück, dessen isNullObject -Eigenschaft auf truefestgelegt ist. Weitere Informationen finden Sie unter *OrNullObject-Methoden und -Eigenschaften.

getFirstOrNullObject(): Word.ContentControl;

Gibt zurück

Hinweise

[ API-Satz: WordApi 1.3 ]

Beispiele

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/10-content-controls/insert-and-change-checkbox-content-control.yaml

// Toggles the isChecked property of the first checkbox content control found in the selection.
await Word.run(async (context) => {
  const selectedRange: Word.Range = context.document.getSelection();
  let selectedContentControl = selectedRange
    .getContentControls({
      types: [Word.ContentControlType.checkBox]
    })
    .getFirstOrNullObject();
  selectedContentControl.load("id,checkboxContentControl/isChecked");

  await context.sync();

  if (selectedContentControl.isNullObject) {
    const parentContentControl: Word.ContentControl = selectedRange.parentContentControl;
    parentContentControl.load("id,type,checkboxContentControl/isChecked");
    await context.sync();

    if (parentContentControl.isNullObject || parentContentControl.type !== Word.ContentControlType.checkBox) {
      console.warn("No checkbox content control is currently selected.");
      return;
    } else {
      selectedContentControl = parentContentControl;
    }
  }

  const isCheckedBefore = selectedContentControl.checkboxContentControl.isChecked;
  console.log("isChecked state before:", `id: ${selectedContentControl.id} ... isChecked: ${isCheckedBefore}`);
  selectedContentControl.checkboxContentControl.isChecked = !isCheckedBefore;
  selectedContentControl.load("id,checkboxContentControl/isChecked");
  await context.sync();

  console.log(
    "isChecked state after:",
    `id: ${selectedContentControl.id} ... isChecked: ${selectedContentControl.checkboxContentControl.isChecked}`
  );
});

getItem(id)

Ruft ein Inhaltssteuerelement anhand seiner ID ab.

getItem(id: number): Word.ContentControl;

Parameter

id

number

Die ID des Inhaltssteuerelements.

Gibt zurück

Hinweise

[ API-Satz: WordApi 1.1 ]

load(options)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

load(options?: Word.Interfaces.ContentControlCollectionLoadOptions & Word.Interfaces.CollectionLoadOptions): Word.ContentControlCollection;

Parameter

options

Word.Interfaces.ContentControlCollectionLoadOptions & Word.Interfaces.CollectionLoadOptions

Stellt Optionen dafür bereit, welche Eigenschaften des -Objekts geladen werden sollen.

Gibt zurück

Beispiele

// Run a batch operation against the Word object model.
await Word.run(async (context) => {

    // Create a proxy object for the content controls collection.
    const contentControls = context.document.contentControls;

    // Queue a command to load the id property for all of the content controls.
    contentControls.load('id');

    // Synchronize the document state by executing the queued commands,
    // and return a promise to indicate task completion.
    await context.sync();
    if (contentControls.items.length === 0) {
        console.log('No content control found.');
    }
    else {
        // Queue a command to load the properties on the first content control.
        contentControls.items[0].load(  'appearance,' +
                                        'cannotDelete,' +
                                        'cannotEdit,' +
                                        'color,' +
                                        'id,' +
                                        'placeHolderText,' +
                                        'removeWhenEdited,' +
                                        'title,' +
                                        'text,' +
                                        'type,' +
                                        'style,' +
                                        'tag,' +
                                        'font/size,' +
                                        'font/name,' +
                                        'font/color');

        // Synchronize the document state by executing the queued commands,
        // and return a promise to indicate task completion.
        await context.sync();
        console.log('Property values of the first content control:' +
            '   ----- appearance: ' + contentControls.items[0].appearance +
            '   ----- cannotDelete: ' + contentControls.items[0].cannotDelete +
            '   ----- cannotEdit: ' + contentControls.items[0].cannotEdit +
            '   ----- color: ' + contentControls.items[0].color +
            '   ----- id: ' + contentControls.items[0].id +
            '   ----- placeHolderText: ' + contentControls.items[0].placeholderText +
            '   ----- removeWhenEdited: ' + contentControls.items[0].removeWhenEdited +
            '   ----- title: ' + contentControls.items[0].title +
            '   ----- text: ' + contentControls.items[0].text +
            '   ----- type: ' + contentControls.items[0].type +
            '   ----- style: ' + contentControls.items[0].style +
            '   ----- tag: ' + contentControls.items[0].tag +
            '   ----- font size: ' + contentControls.items[0].font.size +
            '   ----- font name: ' + contentControls.items[0].font.name +
            '   ----- font color: ' + contentControls.items[0].font.color);
    }
});

// The Silly stories add-in sample shows how the load method is used
// to load the content control collection with the tag and title properties.
// https://aka.ms/sillystorywordaddin

load(propertyNames)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

load(propertyNames?: string | string[]): Word.ContentControlCollection;

Parameter

propertyNames

string | string[]

Eine durch Trennzeichen getrennte Zeichenfolge oder ein Array von Zeichenfolgen, die die zu ladenden Eigenschaften angeben.

Gibt zurück

load(propertyNamesAndPaths)

Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.

load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Word.ContentControlCollection;

Parameter

propertyNamesAndPaths
OfficeExtension.LoadOption

propertyNamesAndPaths.select ist eine durch Trennzeichen getrennte Zeichenfolge, die die zu ladenden Eigenschaften angibt, und propertyNamesAndPaths.expand eine durch Trennzeichen getrennte Zeichenfolge, die die zu ladenden Navigationseigenschaften angibt.

Gibt zurück

toJSON()

Überschreibt die JavaScript-Methode toJSON() , um eine nützlichere Ausgabe bereitzustellen, wenn ein API-Objekt an JSON.stringify()übergeben wird. (JSON.stringifyruft wiederum die toJSON -Methode des Objekts auf, das an das Objekt übergeben wird.) Während das ursprüngliche Word.ContentControlCollection Objekt ein API-Objekt ist, gibt die toJSON Methode ein einfaches JavaScript-Objekt (typisiert als Word.Interfaces.ContentControlCollectionData) zurück, das ein "Items"-Array mit flachen Kopien aller geladenen Eigenschaften aus den Elementen der Auflistung enthält.

toJSON(): Word.Interfaces.ContentControlCollectionData;

Gibt zurück

track()

Nachverfolgung des Objekts zwecks automatischer Anpassung auf der Grundlage der umgebenden Änderungen im Dokument. Dieser Aufruf ist eine Kurzform für context.trackedObjects.add(thisObject). Wenn Sie dieses Objekt über .sync Aufrufe hinweg und außerhalb der sequenziellen Ausführung eines ".run"-Batches verwenden und beim Festlegen einer Eigenschaft oder beim Aufrufen einer Methode für das Objekt den Fehler "InvalidObjectPath" erhalten, müssen Sie das Objekt der nachverfolgten Objektauflistung hinzufügen, als das Objekt zum ersten Mal erstellt wurde. Wenn dieses Objekt Teil einer Auflistung ist, sollten Sie auch die übergeordnete Auflistung nachverfolgen.

track(): Word.ContentControlCollection;

Gibt zurück

untrack()

Gibt den diesem Objekt zugewiesenen Arbeitsspeicher frei, wenn das Objekt zuvor nachverfolgt wurde. Dieser Aufruf ist die Kurzform für context.trackedObjects.remove(thisObject). Viele nachverfolgte Objekte verlangsamen die Ausführung der Hostanwendung, also achten Sie darauf, alle hinzugefügten Objekte nach abgeschlossener Verwendung freizugeben. Sie müssen aufrufen context.sync() , bevor die Speicherfreigabe wirksam wird.

untrack(): Word.ContentControlCollection;

Gibt zurück