Word.ContentControl class
Представляет элемент управления содержимым. Элементы управления содержимым — это связанные и, возможно, помеченные фрагменты документа, выполняющие роль контейнеров для определенных типов содержимого. Отдельные элементы управления контентом могут содержать изображения, таблицы или абзацы форматированного текста. В настоящее время поддерживаются только элементы управления содержимым форматированного текста, обычного текста и флажка.
- Extends
Комментарии
Примеры
// 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);
}
});
Свойства
appearance | Указывает внешний вид элемента управления содержимым. Значение может быть 'BoundingBox', 'Tags' или 'Hidden'. |
cannot |
Указывает значение, указывающее, может ли пользователь удалить элемент управления содержимым. Является взаимоисключающим со свойством removeWhenEdited. |
cannot |
Указывает значение, указывающее, может ли пользователь изменять содержимое элемента управления содержимым. |
checkbox |
Возвращает данные элемента управления содержимым, если его тип — CheckBox.
|
color | Задает цвет элемента управления содержимым. Цвет указывается в формате "#RRGGBB" или с помощью имени цвета. |
combo |
Возвращает данные элемента управления содержимым, если его тип — "ComboBox".
|
content |
Получает коллекцию объектов элементов управления содержимым в элементе управления содержимым. |
context | Контекст запроса, связанный с объектом . Это соединяет процесс надстройки с процессом ведущего приложения Office. |
drop |
Возвращает данные элемента управления содержимым, если его тип — DropDownList.
|
endnotes | Возвращает коллекцию концевых сносок в элементе управления содержимым. |
fields | Возвращает коллекцию объектов полей в элементе управления содержимым. |
font | Получает текстовый формат элемента управления содержимым. Используйте это свойство для получения и установки имени, размера, цвета и других свойств шрифта. |
footnotes | Возвращает коллекцию сносок в элементе управления содержимым. |
id | Возвращает целое число, представляющее собой идентификатор элемента управления контентом. |
inline |
Возвращает коллекцию объектов InlinePicture в элементе управления содержимым. Коллекция не включает плавающие изображения. |
lists | Возвращает коллекцию объектов списков в элементе управления содержимым. |
paragraphs | Возвращает коллекцию объектов абзаца в элементе управления содержимым. |
parent |
Возвращает родительский текст элемента управления содержимым. |
parent |
Получает элемент управления содержимым, содержащий элемент управления содержимым. Выдает ошибку |
parent |
Получает элемент управления содержимым, содержащий элемент управления содержимым. Если родительского элемента управления содержимым нет, этот метод вернет объект со свойством |
parent |
Возвращает таблицу, содержащую элемент управления содержимым. Выдает ошибку |
parent |
Возвращает ячейку таблицы, содержащую элемент управления содержимым. Выдает ошибку |
parent |
Возвращает ячейку таблицы, содержащую элемент управления содержимым. Если он не содержится в ячейке таблицы, этот метод вернет объект со свойством , для него |
parent |
Возвращает таблицу, содержащую элемент управления содержимым. Если он не содержится в таблице, то этот метод вернет объект со свойством |
placeholder |
Задает замещающий текст элемента управления содержимым. Если элемент управления содержимым пуст, отображается затемненный текст. |
remove |
Указывает значение, указывающее, удаляется ли элемент управления содержимым после его изменения. Является взаимоисключающим со свойством cannotDelete. |
style | Задает имя стиля для элемента управления содержимым. Используйте это свойство для пользовательских стилей и локализованных имен стилей. Чтобы использовать встроенные стили, поддерживающие несколько языковых стандартов, применяйте свойство styleBuiltIn. |
style |
Задает встроенное имя стиля для элемента управления содержимым. Используйте это свойство для встроенных стилей, поддерживающих несколько языковых стандартов. Чтобы использовать пользовательские стили или локализованные имена стилей, применяйте свойство style. |
subtype | Возвращает подтип элемента управления содержимым. Подтип может быть "RichTextInline", "RichTextParagraphs", "RichTextTableCell", "RichTextTableRow" и "RichTextTable" для элементов управления содержимым форматированного текста, "PlainTextInline" и "PlainTextParagraph" для элементов управления содержимым в виде обычного текста или "CheckBox" для элементов управления содержимым флажками. |
tables | Возвращает коллекцию объектов таблиц в элементе управления содержимым. |
tag | Указывает тег для идентификации элемента управления содержимым. |
text | Возвращает текст элемента управления содержимым. |
title | Задает заголовок элемента управления содержимым. |
type | Получает тип элемента управления содержимым. В настоящее время поддерживаются только элементы управления содержимым с форматированным текстом, обычным текстом и содержимым флажков. |
Методы
clear() | Очищает содержимое элемента управления содержимым. Пользователь может отменить операцию для очищенного содержимого. |
delete(keep |
Удаляет элемент управления содержимым и его содержимое. Если |
get |
Возвращает комментарии, связанные с элементом управления содержимым. |
get |
Возвращает поддерживаемые в данный момент дочерние элементы управления содержимым в этом элементе управления содержимым. |
get |
Возвращает HTML-представление объекта элемента управления содержимым. При отображении на веб-странице или в средстве просмотра HTML форматирование будет близко, но не точно совпадает с форматированием документа. Этот метод не возвращает один и тот же HTML-код для одного документа на разных платформах (Windows, Mac, Word в Интернете и т. д.). Если вам нужна точную точность или согласованность на разных платформах, используйте |
get |
Возвращает OOXML-представление объекта элемента управления содержимым. |
get |
Возвращает весь элемент управления содержимым (либо его начальную или конечную точку) в виде диапазона. |
get |
Возвращает проверенный текст на основе выбора ChangeTrackingVersion. |
get |
Возвращает проверенный текст на основе выбора ChangeTrackingVersion. |
get |
Получает текстовые диапазоны в элементе управления содержимым с помощью знаков препинания и (или) других конечных знаков. |
get |
Возвращает коллекцию объектов TrackedChange в элементе управления содержимым. |
insert |
Вставляет разрыв в указанном расположении в основном документе. Этот метод нельзя использовать с элементами управления содержимым RichTextTable, RichTextTableRow и RichTextTableCell. |
insert |
Вставляет документ в элемент управления содержимым в указанном расположении. |
insert |
Вставляет HTML-код в элемент управления содержимым в указанном расположении. |
insert |
Вставляет встроенный рисунок в элемент управления содержимым в указанном расположении. |
insert |
Вставляет OOXML в элемент управления содержимым в указанном расположении. |
insert |
Вставляет абзац в указанном расположении. |
insert |
Вставляет таблицу с указанным количеством строк и столбцов в элемент управления содержимым или рядом с ним. |
insert |
Вставляет текст в элемент управления содержимым в указанном расположении. |
load(options) | Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
reset |
Сбрасывает состояние элемента управления содержимым. |
search(search |
Выполняет поиск с указанным SearchOptions на область объекта элемента управления содержимым. Результат поиска — это коллекция объектов диапазона. |
select(selection |
Выбирает элемент управления контентом. При этом Word переходит к выделенному фрагменту. |
select(selection |
Выбирает элемент управления контентом. При этом Word переходит к выделенному фрагменту. |
set(properties, options) | Задает несколько свойств объекта одновременно. Можно передать обычный объект с соответствующими свойствами или другой объект API того же типа. |
set(properties) | Задает несколько свойств объекта одновременно на основе существующего загруженного объекта. |
set |
Задает состояние элемента управления содержимым. |
set |
Задает состояние элемента управления содержимым. |
split(delimiters, multi |
Разделяет элемент управления содержимым на дочерние диапазоны с помощью разделителей. |
toJSON() | Переопределяет метод JavaScript |
track() | Отслеживает объект для автоматической корректировки с учетом окружающих изменений в документе. Этот вызов является сокращением для context.trackedObjects.add(thisObject). Если вы используете этот объект в вызовах |
untrack() | Освобождает память, связанную с этим объектом, если он ранее отслеживался. Этот вызов является сокращенным для context.trackedObjects.remove(thisObject). Наличие большого количества отслеживаемых объектов замедляет ведущее приложение, поэтому не забывайте освобождать любые добавленные объекты после завершения их использования. Вызов потребуется выполнить |
События
on |
Происходит при добавлении новых комментариев. |
on |
Происходит при изменении комментария или его ответа. |
on |
Происходит при отмене выбора комментария. |
on |
Происходит при выборе комментария. |
on |
Происходит при изменении данных в элементе управления содержимым. Чтобы получить новый текст, загрузите этот элемент управления содержимым в обработчик. Чтобы получить старый текст, не загружайте его. |
on |
Происходит при удалении элемента управления содержимым. Не загружайте этот элемент управления содержимым в обработчик, в противном случае вы не сможете получить его исходные свойства. |
on |
Происходит при вводе элемента управления содержимым. |
on |
Происходит при выходе из элемента управления содержимым, например при выходе курсора из элемента управления содержимым. |
on |
Происходит при изменении выделения в элементе управления содержимым. |
Сведения о свойстве
appearance
Указывает внешний вид элемента управления содержимым. Значение может быть 'BoundingBox', 'Tags' или 'Hidden'.
appearance: Word.ContentControlAppearance | "BoundingBox" | "Tags" | "Hidden";
Значение свойства
Word.ContentControlAppearance | "BoundingBox" | "Tags" | "Hidden"
Комментарии
cannotDelete
Указывает значение, указывающее, может ли пользователь удалить элемент управления содержимым. Является взаимоисключающим со свойством removeWhenEdited.
cannotDelete: boolean;
Значение свойства
boolean
Комментарии
cannotEdit
Указывает значение, указывающее, может ли пользователь изменять содержимое элемента управления содержимым.
cannotEdit: boolean;
Значение свойства
boolean
Комментарии
checkboxContentControl
Возвращает данные элемента управления содержимым, если его тип — CheckBox.
null
В противном случае.
readonly checkboxContentControl: Word.CheckboxContentControl;
Значение свойства
Комментарии
Примеры
// 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}`
);
});
color
Задает цвет элемента управления содержимым. Цвет указывается в формате "#RRGGBB" или с помощью имени цвета.
color: string;
Значение свойства
string
Комментарии
comboBoxContentControl
Возвращает данные элемента управления содержимым, если его тип — "ComboBox".
null
В противном случае.
readonly comboBoxContentControl: Word.ComboBoxContentControl;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/10-content-controls/insert-and-change-combo-box-content-control.yaml
// Adds the provided list item to the first combo box content control in the selection.
await Word.run(async (context) => {
const listItemText = $("#item-to-add")
.val()
.toString()
.trim();
const selectedRange: Word.Range = context.document.getSelection();
let selectedContentControl = selectedRange
.getContentControls({
types: [Word.ContentControlType.comboBox]
})
.getFirstOrNullObject();
selectedContentControl.load("id,comboBoxContentControl");
await context.sync();
if (selectedContentControl.isNullObject) {
const parentContentControl: Word.ContentControl = selectedRange.parentContentControl;
parentContentControl.load("id,type,comboBoxContentControl");
await context.sync();
if (parentContentControl.isNullObject || parentContentControl.type !== Word.ContentControlType.comboBox) {
console.warn("No combo box content control is currently selected.");
return;
} else {
selectedContentControl = parentContentControl;
}
}
selectedContentControl.comboBoxContentControl.addListItem(listItemText);
await context.sync();
console.log(`List item added to control with ID ${selectedContentControl.id}: ${listItemText}`);
});
contentControls
Получает коллекцию объектов элементов управления содержимым в элементе управления содержимым.
readonly contentControls: Word.ContentControlCollection;
Значение свойства
Комментарии
context
Контекст запроса, связанный с объектом . Это соединяет процесс надстройки с процессом ведущего приложения Office.
context: RequestContext;
Значение свойства
dropDownListContentControl
Возвращает данные элемента управления содержимым, если его тип — DropDownList.
null
В противном случае.
readonly dropDownListContentControl: Word.DropDownListContentControl;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/10-content-controls/insert-and-change-dropdown-list-content-control.yaml
// Adds the provided list item to the first dropdown list content control in the selection.
await Word.run(async (context) => {
const listItemText = $("#item-to-add")
.val()
.toString()
.trim();
const selectedRange: Word.Range = context.document.getSelection();
let selectedContentControl = selectedRange
.getContentControls({
types: [Word.ContentControlType.dropDownList]
})
.getFirstOrNullObject();
selectedContentControl.load("id,dropDownListContentControl");
await context.sync();
if (selectedContentControl.isNullObject) {
const parentContentControl: Word.ContentControl = selectedRange.parentContentControl;
parentContentControl.load("id,type,dropDownListContentControl");
await context.sync();
if (parentContentControl.isNullObject || parentContentControl.type !== Word.ContentControlType.dropDownList) {
console.warn("No dropdown list content control is currently selected.");
return;
} else {
selectedContentControl = parentContentControl;
}
}
selectedContentControl.dropDownListContentControl.addListItem(listItemText);
await context.sync();
console.log(`List item added to control with ID ${selectedContentControl.id}: ${listItemText}`);
});
endnotes
Возвращает коллекцию концевых сносок в элементе управления содержимым.
readonly endnotes: Word.NoteItemCollection;
Значение свойства
Комментарии
fields
Возвращает коллекцию объектов полей в элементе управления содержимым.
readonly fields: Word.FieldCollection;
Значение свойства
Комментарии
font
Получает текстовый формат элемента управления содержимым. Используйте это свойство для получения и установки имени, размера, цвета и других свойств шрифта.
readonly font: Word.Font;
Значение свойства
Комментарии
footnotes
Возвращает коллекцию сносок в элементе управления содержимым.
readonly footnotes: Word.NoteItemCollection;
Значение свойства
Комментарии
id
Возвращает целое число, представляющее собой идентификатор элемента управления контентом.
readonly id: number;
Значение свойства
number
Комментарии
inlinePictures
Возвращает коллекцию объектов InlinePicture в элементе управления содержимым. Коллекция не включает плавающие изображения.
readonly inlinePictures: Word.InlinePictureCollection;
Значение свойства
Комментарии
lists
Возвращает коллекцию объектов списков в элементе управления содержимым.
readonly lists: Word.ListCollection;
Значение свойства
Комментарии
paragraphs
Возвращает коллекцию объектов абзаца в элементе управления содержимым.
readonly paragraphs: Word.ParagraphCollection;
Значение свойства
Комментарии
Важно! Для наборов требований 1.1 и 1.2 абзацы в таблицах, которые содержатся в этом элементе управления содержимым, не возвращаются. Из набора обязательных элементов 1.3 также возвращаются абзацы в таких таблицах.
parentBody
Возвращает родительский текст элемента управления содержимым.
readonly parentBody: Word.Body;
Значение свойства
Комментарии
parentContentControl
Получает элемент управления содержимым, содержащий элемент управления содержимым. Выдает ошибку ItemNotFound
, если родительского элемента управления содержимым нет.
readonly parentContentControl: Word.ContentControl;
Значение свойства
Комментарии
parentContentControlOrNullObject
Получает элемент управления содержимым, содержащий элемент управления содержимым. Если родительского элемента управления содержимым нет, этот метод вернет объект со свойством isNullObject
true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
readonly parentContentControlOrNullObject: Word.ContentControl;
Значение свойства
Комментарии
parentTable
Возвращает таблицу, содержащую элемент управления содержимым. Выдает ошибку ItemNotFound
, если она не содержится в таблице.
readonly parentTable: Word.Table;
Значение свойства
Комментарии
parentTableCell
Возвращает ячейку таблицы, содержащую элемент управления содержимым. Выдает ошибку ItemNotFound
, если она не содержится в ячейке таблицы.
readonly parentTableCell: Word.TableCell;
Значение свойства
Комментарии
parentTableCellOrNullObject
Возвращает ячейку таблицы, содержащую элемент управления содержимым. Если он не содержится в ячейке таблицы, этот метод вернет объект со свойством , для него isNullObject
задано значение true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
readonly parentTableCellOrNullObject: Word.TableCell;
Значение свойства
Комментарии
parentTableOrNullObject
Возвращает таблицу, содержащую элемент управления содержимым. Если он не содержится в таблице, то этот метод вернет объект со свойством isNullObject
true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
readonly parentTableOrNullObject: Word.Table;
Значение свойства
Комментарии
placeholderText
Задает замещающий текст элемента управления содержимым. Если элемент управления содержимым пуст, отображается затемненный текст.
placeholderText: string;
Значение свойства
string
Комментарии
removeWhenEdited
Указывает значение, указывающее, удаляется ли элемент управления содержимым после его изменения. Является взаимоисключающим со свойством cannotDelete.
removeWhenEdited: boolean;
Значение свойства
boolean
Комментарии
style
Задает имя стиля для элемента управления содержимым. Используйте это свойство для пользовательских стилей и локализованных имен стилей. Чтобы использовать встроенные стили, поддерживающие несколько языковых стандартов, применяйте свойство styleBuiltIn.
style: string;
Значение свойства
string
Комментарии
styleBuiltIn
Задает встроенное имя стиля для элемента управления содержимым. Используйте это свойство для встроенных стилей, поддерживающих несколько языковых стандартов. Чтобы использовать пользовательские стили или локализованные имена стилей, применяйте свойство style.
styleBuiltIn: Word.BuiltInStyleName | "Other" | "Normal" | "Heading1" | "Heading2" | "Heading3" | "Heading4" | "Heading5" | "Heading6" | "Heading7" | "Heading8" | "Heading9" | "Toc1" | "Toc2" | "Toc3" | "Toc4" | "Toc5" | "Toc6" | "Toc7" | "Toc8" | "Toc9" | "FootnoteText" | "Header" | "Footer" | "Caption" | "FootnoteReference" | "EndnoteReference" | "EndnoteText" | "Title" | "Subtitle" | "Hyperlink" | "Strong" | "Emphasis" | "NoSpacing" | "ListParagraph" | "Quote" | "IntenseQuote" | "SubtleEmphasis" | "IntenseEmphasis" | "SubtleReference" | "IntenseReference" | "BookTitle" | "Bibliography" | "TocHeading" | "TableGrid" | "PlainTable1" | "PlainTable2" | "PlainTable3" | "PlainTable4" | "PlainTable5" | "TableGridLight" | "GridTable1Light" | "GridTable1Light_Accent1" | "GridTable1Light_Accent2" | "GridTable1Light_Accent3" | "GridTable1Light_Accent4" | "GridTable1Light_Accent5" | "GridTable1Light_Accent6" | "GridTable2" | "GridTable2_Accent1" | "GridTable2_Accent2" | "GridTable2_Accent3" | "GridTable2_Accent4" | "GridTable2_Accent5" | "GridTable2_Accent6" | "GridTable3" | "GridTable3_Accent1" | "GridTable3_Accent2" | "GridTable3_Accent3" | "GridTable3_Accent4" | "GridTable3_Accent5" | "GridTable3_Accent6" | "GridTable4" | "GridTable4_Accent1" | "GridTable4_Accent2" | "GridTable4_Accent3" | "GridTable4_Accent4" | "GridTable4_Accent5" | "GridTable4_Accent6" | "GridTable5Dark" | "GridTable5Dark_Accent1" | "GridTable5Dark_Accent2" | "GridTable5Dark_Accent3" | "GridTable5Dark_Accent4" | "GridTable5Dark_Accent5" | "GridTable5Dark_Accent6" | "GridTable6Colorful" | "GridTable6Colorful_Accent1" | "GridTable6Colorful_Accent2" | "GridTable6Colorful_Accent3" | "GridTable6Colorful_Accent4" | "GridTable6Colorful_Accent5" | "GridTable6Colorful_Accent6" | "GridTable7Colorful" | "GridTable7Colorful_Accent1" | "GridTable7Colorful_Accent2" | "GridTable7Colorful_Accent3" | "GridTable7Colorful_Accent4" | "GridTable7Colorful_Accent5" | "GridTable7Colorful_Accent6" | "ListTable1Light" | "ListTable1Light_Accent1" | "ListTable1Light_Accent2" | "ListTable1Light_Accent3" | "ListTable1Light_Accent4" | "ListTable1Light_Accent5" | "ListTable1Light_Accent6" | "ListTable2" | "ListTable2_Accent1" | "ListTable2_Accent2" | "ListTable2_Accent3" | "ListTable2_Accent4" | "ListTable2_Accent5" | "ListTable2_Accent6" | "ListTable3" | "ListTable3_Accent1" | "ListTable3_Accent2" | "ListTable3_Accent3" | "ListTable3_Accent4" | "ListTable3_Accent5" | "ListTable3_Accent6" | "ListTable4" | "ListTable4_Accent1" | "ListTable4_Accent2" | "ListTable4_Accent3" | "ListTable4_Accent4" | "ListTable4_Accent5" | "ListTable4_Accent6" | "ListTable5Dark" | "ListTable5Dark_Accent1" | "ListTable5Dark_Accent2" | "ListTable5Dark_Accent3" | "ListTable5Dark_Accent4" | "ListTable5Dark_Accent5" | "ListTable5Dark_Accent6" | "ListTable6Colorful" | "ListTable6Colorful_Accent1" | "ListTable6Colorful_Accent2" | "ListTable6Colorful_Accent3" | "ListTable6Colorful_Accent4" | "ListTable6Colorful_Accent5" | "ListTable6Colorful_Accent6" | "ListTable7Colorful" | "ListTable7Colorful_Accent1" | "ListTable7Colorful_Accent2" | "ListTable7Colorful_Accent3" | "ListTable7Colorful_Accent4" | "ListTable7Colorful_Accent5" | "ListTable7Colorful_Accent6";
Значение свойства
Word.BuiltInStyleName | "Other" | "Normal" | "Heading1" | "Heading2" | "Heading3" | "Heading4" | "Heading5" | "Heading6" | "Heading7" | "Heading8" | "Heading9" | "Toc1" | "Toc2" | "Toc3" | "Toc4" | "Toc5" | "Toc6" | "Toc7" | "Toc8" | "Toc9" | "FootnoteText" | "Header" | "Footer" | "Caption" | "FootnoteReference" | "EndnoteReference" | "EndnoteText" | "Title" | "Subtitle" | "Hyperlink" | "Strong" | "Emphasis" | "NoSpacing" | "ListParagraph" | "Quote" | "IntenseQuote" | "SubtleEmphasis" | "IntenseEmphasis" | "SubtleReference" | "IntenseReference" | "BookTitle" | "Bibliography" | "TocHeading" | "TableGrid" | "PlainTable1" | "PlainTable2" | "PlainTable3" | "PlainTable4" | "PlainTable5" | "TableGridLight" | "GridTable1Light" | "GridTable1Light_Accent1" | "GridTable1Light_Accent2" | "GridTable1Light_Accent3" | "GridTable1Light_Accent4" | "GridTable1Light_Accent5" | "GridTable1Light_Accent6" | "GridTable2" | "GridTable2_Accent1" | "GridTable2_Accent2" | "GridTable2_Accent3" | "GridTable2_Accent4" | "GridTable2_Accent5" | "GridTable2_Accent6" | "GridTable3" | "GridTable3_Accent1" | "GridTable3_Accent2" | "GridTable3_Accent3" | "GridTable3_Accent4" | "GridTable3_Accent5" | "GridTable3_Accent6" | "GridTable4" | "GridTable4_Accent1" | "GridTable4_Accent2" | "GridTable4_Accent3" | "GridTable4_Accent4" | "GridTable4_Accent5" | "GridTable4_Accent6" | "GridTable5Dark" | "GridTable5Dark_Accent1" | "GridTable5Dark_Accent2" | "GridTable5Dark_Accent3" | "GridTable5Dark_Accent4" | "GridTable5Dark_Accent5" | "GridTable5Dark_Accent6" | "GridTable6Colorful" | "GridTable6Colorful_Accent1" | "GridTable6Colorful_Accent2" | "GridTable6Colorful_Accent3" | "GridTable6Colorful_Accent4" | "GridTable6Colorful_Accent5" | "GridTable6Colorful_Accent6" | "GridTable7Colorful" | "GridTable7Colorful_Accent1" | "GridTable7Colorful_Accent2" | "GridTable7Colorful_Accent3" | "GridTable7Colorful_Accent4" | "GridTable7Colorful_Accent5" | "GridTable7Colorful_Accent6" | "ListTable1Light" | "ListTable1Light_Accent1" | "ListTable1Light_Accent2" | "ListTable1Light_Accent3" | "ListTable1Light_Accent4" | "ListTable1Light_Accent5" | "ListTable1Light_Accent6" | "ListTable2" | "ListTable2_Accent1" | "ListTable2_Accent2" | "ListTable2_Accent3" | "ListTable2_Accent4" | "ListTable2_Accent5" | "ListTable2_Accent6" | "ListTable3" | "ListTable3_Accent1" | "ListTable3_Accent2" | "ListTable3_Accent3" | "ListTable3_Accent4" | "ListTable3_Accent5" | "ListTable3_Accent6" | "ListTable4" | "ListTable4_Accent1" | "ListTable4_Accent2" | "ListTable4_Accent3" | "ListTable4_Accent4" | "ListTable4_Accent5" | "ListTable4_Accent6" | "ListTable5Dark" | "ListTable5Dark_Accent1" | "ListTable5Dark_Accent2" | "ListTable5Dark_Accent3" | "ListTable5Dark_Accent4" | "ListTable5Dark_Accent5" | "ListTable5Dark_Accent6" | "ListTable6Colorful" | "ListTable6Colorful_Accent1" | "ListTable6Colorful_Accent2" | "ListTable6Colorful_Accent3" | "ListTable6Colorful_Accent4" | "ListTable6Colorful_Accent5" | "ListTable6Colorful_Accent6" | "ListTable7Colorful" | "ListTable7Colorful_Accent1" | "ListTable7Colorful_Accent2" | "ListTable7Colorful_Accent3" | "ListTable7Colorful_Accent4" | "ListTable7Colorful_Accent5" | "ListTable7Colorful_Accent6"
Комментарии
subtype
Возвращает подтип элемента управления содержимым. Подтип может быть "RichTextInline", "RichTextParagraphs", "RichTextTableCell", "RichTextTableRow" и "RichTextTable" для элементов управления содержимым форматированного текста, "PlainTextInline" и "PlainTextParagraph" для элементов управления содержимым в виде обычного текста или "CheckBox" для элементов управления содержимым флажками.
readonly subtype: Word.ContentControlType | "Unknown" | "RichTextInline" | "RichTextParagraphs" | "RichTextTableCell" | "RichTextTableRow" | "RichTextTable" | "PlainTextInline" | "PlainTextParagraph" | "Picture" | "BuildingBlockGallery" | "CheckBox" | "ComboBox" | "DropDownList" | "DatePicker" | "RepeatingSection" | "RichText" | "PlainText";
Значение свойства
Word.ContentControlType | "Unknown" | "RichTextInline" | "RichTextParagraphs" | "RichTextTableCell" | "RichTextTableRow" | "RichTextTable" | "PlainTextInline" | "PlainTextParagraph" | "Picture" | "BuildingBlockGallery" | "CheckBox" | "ComboBox" | "DropDownList" | "DatePicker" | "RepeatingSection" | "RichText" | "PlainText"
Комментарии
tables
Возвращает коллекцию объектов таблиц в элементе управления содержимым.
readonly tables: Word.TableCollection;
Значение свойства
Комментарии
tag
Указывает тег для идентификации элемента управления содержимым.
tag: string;
Значение свойства
string
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/10-content-controls/insert-and-change-content-controls.yaml
// Traverses each paragraph of the document and wraps a content control on each with either a even or odd tags.
await Word.run(async (context) => {
let paragraphs = context.document.body.paragraphs;
paragraphs.load("$none"); // Don't need any properties; just wrap each paragraph with a content control.
await context.sync();
for (let i = 0; i < paragraphs.items.length; i++) {
let contentControl = paragraphs.items[i].insertContentControl();
// For even, tag "even".
if (i % 2 === 0) {
contentControl.tag = "even";
} else {
contentControl.tag = "odd";
}
}
console.log("Content controls inserted: " + paragraphs.items.length);
await context.sync();
});
text
Возвращает текст элемента управления содержимым.
readonly text: string;
Значение свойства
string
Комментарии
title
Задает заголовок элемента управления содержимым.
title: string;
Значение свойства
string
Комментарии
type
Получает тип элемента управления содержимым. В настоящее время поддерживаются только элементы управления содержимым с форматированным текстом, обычным текстом и содержимым флажков.
readonly type: Word.ContentControlType | "Unknown" | "RichTextInline" | "RichTextParagraphs" | "RichTextTableCell" | "RichTextTableRow" | "RichTextTable" | "PlainTextInline" | "PlainTextParagraph" | "Picture" | "BuildingBlockGallery" | "CheckBox" | "ComboBox" | "DropDownList" | "DatePicker" | "RepeatingSection" | "RichText" | "PlainText";
Значение свойства
Word.ContentControlType | "Unknown" | "RichTextInline" | "RichTextParagraphs" | "RichTextTableCell" | "RichTextTableRow" | "RichTextTable" | "PlainTextInline" | "PlainTextParagraph" | "Picture" | "BuildingBlockGallery" | "CheckBox" | "ComboBox" | "DropDownList" | "DatePicker" | "RepeatingSection" | "RichText" | "PlainText"
Комментарии
Сведения о методе
clear()
Очищает содержимое элемента управления содержимым. Пользователь может отменить операцию для очищенного содержимого.
clear(): void;
Возвращаемое значение
void
Комментарии
Примеры
// 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 content controls collection.
contentControls.load('text');
// 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("There isn't a content control in this document.");
} else {
// Queue a command to clear the contents of the first content control.
contentControls.items[0].clear();
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log('Content control cleared of contents.');
}
});
delete(keepContent)
Удаляет элемент управления содержимым и его содержимое. Если keepContent
задано значение true, содержимое не удаляется.
delete(keepContent: boolean): void;
Параметры
- keepContent
-
boolean
Обязательно. Указывает, следует ли удалить содержимое вместе с элементом управления содержимым. Если keepContent
задано значение true, содержимое не удаляется.
Возвращаемое значение
void
Комментарии
Примеры
// 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 content controls collection.
contentControls.load('text');
// 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("There isn't a content control in this document.");
} else {
// Queue a command to delete the first content control.
// The contents will remain in the document.
contentControls.items[0].delete(true);
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log('Content control cleared of contents.');
}
});
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/10-content-controls/content-control-ondeleted-event.yaml
await Word.run(async (context) => {
const contentControls: Word.ContentControlCollection = context.document.contentControls.getByTag("forTesting");
contentControls.load("items");
await context.sync();
if (contentControls.items.length === 0) {
console.log("There are no content controls in this document.");
} else {
console.log("Control to be deleted:", contentControls.items[0]);
contentControls.items[0].delete(false);
await context.sync();
}
});
getComments()
Возвращает комментарии, связанные с элементом управления содержимым.
getComments(): Word.CommentCollection;
Возвращаемое значение
Комментарии
getContentControls(options)
Возвращает поддерживаемые в данный момент дочерние элементы управления содержимым в этом элементе управления содержимым.
getContentControls(options?: Word.ContentControlOptions): Word.ContentControlCollection;
Параметры
- options
- Word.ContentControlOptions
Необязательный параметр. Параметры, определяющие возвращаемые элементы управления содержимым.
Возвращаемое значение
Комментарии
Важно! Если в параметре options указаны определенные типы, возвращаются только элементы управления содержимым поддерживаемых типов. Имейте в виду, что при использовании методов универсального Word будет создано исключение. ContentControl, который не относится к конкретному типу. Со временем могут поддерживаться дополнительные типы элементов управления содержимым. Поэтому надстройка должна запрашивать и обрабатывать определенные типы элементов управления содержимым.
getHtml()
Возвращает HTML-представление объекта элемента управления содержимым. При отображении на веб-странице или в средстве просмотра HTML форматирование будет близко, но не точно совпадает с форматированием документа. Этот метод не возвращает один и тот же HTML-код для одного документа на разных платформах (Windows, Mac, Word в Интернете и т. д.). Если вам нужна точную точность или согласованность на разных платформах, используйте ContentControl.getOoxml()
и преобразуйте возвращенный XML-код в HTML.
getHtml(): OfficeExtension.ClientResult<string>;
Возвращаемое значение
OfficeExtension.ClientResult<string>
Комментарии
Примеры
// 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 tag.
const contentControlsWithTag = context.document.contentControls.getByTag('Customer-Address');
// Queue a command to load the tag property for all of content controls.
contentControlsWithTag.load('tag');
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
if (contentControlsWithTag.items.length === 0) {
console.log('No content control found.');
}
else {
// Queue a command to get the HTML contents of the first content control.
const html = contentControlsWithTag.items[0].getHtml();
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log('Content control HTML: ' + html.value);
}
});
getOoxml()
Возвращает OOXML-представление объекта элемента управления содержимым.
getOoxml(): OfficeExtension.ClientResult<string>;
Возвращаемое значение
OfficeExtension.ClientResult<string>
Комментарии
Примеры
// 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 get the OOXML contents of the first content control.
const ooxml = contentControls.items[0].getOoxml();
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log('Content control OOXML: ' + ooxml.value);
}
});
getRange(rangeLocation)
Возвращает весь элемент управления содержимым (либо его начальную или конечную точку) в виде диапазона.
getRange(rangeLocation?: Word.RangeLocation | "Whole" | "Start" | "End" | "Before" | "After" | "Content"): Word.Range;
Параметры
- rangeLocation
-
Word.RangeLocation | "Whole" | "Start" | "End" | "Before" | "After" | "Content"
Необязательный параметр. Диапазон должен находиться в диапазоне "Whole", "Start", "End", "Before", "After" или "Content".
Возвращаемое значение
Комментарии
getReviewedText(changeTrackingVersion)
Возвращает проверенный текст на основе выбора ChangeTrackingVersion.
getReviewedText(changeTrackingVersion?: Word.ChangeTrackingVersion): OfficeExtension.ClientResult<string>;
Параметры
- changeTrackingVersion
- Word.ChangeTrackingVersion
Необязательный параметр. Значение должно быть "Original" или "Current". Значение по умолчанию — Current.
Возвращаемое значение
OfficeExtension.ClientResult<string>
Комментарии
getReviewedText(changeTrackingVersionString)
Возвращает проверенный текст на основе выбора ChangeTrackingVersion.
getReviewedText(changeTrackingVersionString?: "Original" | "Current"): OfficeExtension.ClientResult<string>;
Параметры
- changeTrackingVersionString
-
"Original" | "Current"
Необязательный параметр. Значение должно быть "Original" или "Current". Значение по умолчанию — Current.
Возвращаемое значение
OfficeExtension.ClientResult<string>
Комментарии
getTextRanges(endingMarks, trimSpacing)
Получает текстовые диапазоны в элементе управления содержимым с помощью знаков препинания и (или) других конечных знаков.
getTextRanges(endingMarks: string[], trimSpacing?: boolean): Word.RangeCollection;
Параметры
- endingMarks
-
string[]
Обязательно. Знаки препинания и (или) другие конечные знаки в виде массива строк.
- trimSpacing
-
boolean
Необязательный параметр. Указывает, следует ли обрезать символы интервалов (пробелы, табуляции, разрывы столбцов и конце абзаца) от начала и конца диапазонов, возвращаемых в коллекции диапазонов. Значение по умолчанию равно false, указывающее, что символы с интервалами в начале и конце диапазонов включены в коллекцию диапазонов.
Возвращаемое значение
Комментарии
getTrackedChanges()
Возвращает коллекцию объектов TrackedChange в элементе управления содержимым.
getTrackedChanges(): Word.TrackedChangeCollection;
Возвращаемое значение
Комментарии
insertBreak(breakType, insertLocation)
Вставляет разрыв в указанном расположении в основном документе. Этот метод нельзя использовать с элементами управления содержимым RichTextTable, RichTextTableRow и RichTextTableCell.
insertBreak(breakType: Word.BreakType | "Page" | "Next" | "SectionNext" | "SectionContinuous" | "SectionEven" | "SectionOdd" | "Line", insertLocation: Word.InsertLocation.start | Word.InsertLocation.end | Word.InsertLocation.before | Word.InsertLocation.after | "Start" | "End" | "Before" | "After"): void;
Параметры
- breakType
-
Word.BreakType | "Page" | "Next" | "SectionNext" | "SectionContinuous" | "SectionEven" | "SectionOdd" | "Line"
Обязательно. Тип разрыва.
Обязательно. Значения должны быть "Start", "End", "Before" или "After".
Возвращаемое значение
void
Комментарии
Примеры
// 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 content controls.
contentControls.load('id');
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
// We now will have access to the content control collection.
await context.sync();
if (contentControls.items.length === 0) {
console.log('No content control found.');
}
else {
// Queue a command to insert a page break after the first content control.
contentControls.items[0].insertBreak(Word.BreakType.page, Word.InsertLocation.after);
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log('Inserted a page break after the first content control.');
}
});
insertFileFromBase64(base64File, insertLocation)
Вставляет документ в элемент управления содержимым в указанном расположении.
insertFileFromBase64(base64File: string, insertLocation: Word.InsertLocation.replace | Word.InsertLocation.start | Word.InsertLocation.end | "Replace" | "Start" | "End"): Word.Range;
Параметры
- base64File
-
string
Обязательно. Содержимое файла .docx в кодировке Base64.
Обязательно. Значение должно быть "Replace", "Start" или "End". "Заменить" нельзя использовать с элементами управления содержимым RichTextTable и RichTextTableRow.
Возвращаемое значение
Комментарии
Примечание. Вставка не поддерживается, если вставляемый документ содержит элемент ActiveX (вероятно, в поле формы). Рассмотрите возможность замены такого поля формы элементом управления содержимым или другим вариантом, подходящим для вашего сценария.
insertHtml(html, insertLocation)
Вставляет HTML-код в элемент управления содержимым в указанном расположении.
insertHtml(html: string, insertLocation: Word.InsertLocation.replace | Word.InsertLocation.start | Word.InsertLocation.end | "Replace" | "Start" | "End"): Word.Range;
Параметры
- html
-
string
Обязательно. HTML-код, который необходимо вставить в элемент управления содержимым.
Обязательно. Значение должно быть "Replace", "Start" или "End". "Заменить" нельзя использовать с элементами управления содержимым RichTextTable и RichTextTableRow.
Возвращаемое значение
Комментарии
Примеры
// 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 put HTML into the contents of the first content control.
contentControls.items[0].insertHtml(
'<strong>HTML content inserted into the content control.</strong>',
'Start');
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log('Inserted HTML in the first content control.');
}
});
insertInlinePictureFromBase64(base64EncodedImage, insertLocation)
Вставляет встроенный рисунок в элемент управления содержимым в указанном расположении.
insertInlinePictureFromBase64(base64EncodedImage: string, insertLocation: Word.InsertLocation.replace | Word.InsertLocation.start | Word.InsertLocation.end | "Replace" | "Start" | "End"): Word.InlinePicture;
Параметры
- base64EncodedImage
-
string
Обязательно. Изображение в кодировке Base64, вставленное в элемент управления содержимым.
Обязательно. Значение должно быть "Replace", "Start" или "End". "Заменить" нельзя использовать с элементами управления содержимым RichTextTable и RichTextTableRow.
Возвращаемое значение
Комментарии
insertOoxml(ooxml, insertLocation)
Вставляет OOXML в элемент управления содержимым в указанном расположении.
insertOoxml(ooxml: string, insertLocation: Word.InsertLocation.replace | Word.InsertLocation.start | Word.InsertLocation.end | "Replace" | "Start" | "End"): Word.Range;
Параметры
- ooxml
-
string
Обязательно. OOXML, вставляемый в элемент управления содержимым.
Обязательно. Значение должно быть "Replace", "Start" или "End". "Заменить" нельзя использовать с элементами управления содержимым RichTextTable и RichTextTableRow.
Возвращаемое значение
Комментарии
Примеры
// 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 put OOXML into the contents of the first content control.
contentControls.items[0].insertOoxml("<pkg:package xmlns:pkg='http://schemas.microsoft.com/office/2006/xmlPackage'><pkg:part pkg:name='/_rels/.rels' pkg:contentType='application/vnd.openxmlformats-package.relationships+xml' pkg:padding='512'><pkg:xmlData><Relationships xmlns='http://schemas.openxmlformats.org/package/2006/relationships'><Relationship Id='rId1' Type='http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument' Target='word/document.xml'/></Relationships></pkg:xmlData></pkg:part><pkg:part pkg:name='/word/document.xml' pkg:contentType='application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml'><pkg:xmlData><w:document xmlns:w='http://schemas.openxmlformats.org/wordprocessingml/2006/main' ><w:body><w:p><w:pPr><w:spacing w:before='360' w:after='0' w:line='480' w:lineRule='auto'/><w:rPr><w:color w:val='70AD47' w:themeColor='accent6'/><w:sz w:val='28'/></w:rPr></w:pPr><w:r><w:rPr><w:color w:val='70AD47' w:themeColor='accent6'/><w:sz w:val='28'/></w:rPr><w:t>This text has formatting directly applied to achieve its font size, color, line spacing, and paragraph spacing.</w:t></w:r></w:p></w:body></w:document></pkg:xmlData></pkg:part></pkg:package>", "End");
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log('Inserted OOXML in the first content control.');
}
});
// Read "Create better add-ins for Word with Office Open XML" for guidance on working with OOXML.
// https://learn.microsoft.com/office/dev/add-ins/word/create-better-add-ins-for-word-with-office-open-xml
insertParagraph(paragraphText, insertLocation)
Вставляет абзац в указанном расположении.
insertParagraph(paragraphText: string, insertLocation: Word.InsertLocation.start | Word.InsertLocation.end | Word.InsertLocation.before | Word.InsertLocation.after | "Start" | "End" | "Before" | "After"): Word.Paragraph;
Параметры
- paragraphText
-
string
Обязательно. Текст абзаца, который необходимо вставить.
Обязательно. Значения должны быть "Start", "End", "Before" или "After". "Before" и "After" нельзя использовать с элементами управления содержимым "RichTextTable", "RichTextTableRow" и "RichTextTableCell".
Возвращаемое значение
Комментарии
Примеры
// 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 insert a paragraph after the first content control.
contentControls.items[0].insertParagraph('Text of the inserted paragraph.', 'After');
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log('Inserted a paragraph after the first content control.');
}
});
insertTable(rowCount, columnCount, insertLocation, values)
Вставляет таблицу с указанным количеством строк и столбцов в элемент управления содержимым или рядом с ним.
insertTable(rowCount: number, columnCount: number, insertLocation: Word.InsertLocation.start | Word.InsertLocation.end | Word.InsertLocation.before | Word.InsertLocation.after | "Start" | "End" | "Before" | "After", values?: string[][]): Word.Table;
Параметры
- rowCount
-
number
Обязательно. Количество строк в таблице.
- columnCount
-
number
Обязательно. Количество столбцов в таблице.
Обязательно. Значения должны быть "Start", "End", "Before" или "After". "Before" и "After" нельзя использовать с элементами управления содержимым "RichTextTable", "RichTextTableRow" и "RichTextTableCell".
- values
-
string[][]
Необязательный двухмерный массив. Ячейки заполняются, если в массиве указаны соответствующие строки.
Возвращаемое значение
Комментарии
insertText(text, insertLocation)
Вставляет текст в элемент управления содержимым в указанном расположении.
insertText(text: string, insertLocation: Word.InsertLocation.replace | Word.InsertLocation.start | Word.InsertLocation.end | "Replace" | "Start" | "End"): Word.Range;
Параметры
- text
-
string
Обязательно. Текст, который необходимо вставить в элемент управления содержимым.
Обязательно. Значение должно быть "Replace", "Start" или "End". "Заменить" нельзя использовать с элементами управления содержимым RichTextTable и RichTextTableRow.
Возвращаемое значение
Комментарии
Примеры
// 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 replace text in the first content control.
contentControls.items[0].insertText('Replaced text in the first content control.', 'Replace');
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log('Replaced text in the first content control.');
}
});
// The Silly stories add-in sample shows how to use the insertText method.
// https://aka.ms/sillystorywordaddin
load(options)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(options?: Word.Interfaces.ContentControlLoadOptions): Word.ContentControl;
Параметры
Предоставляет параметры свойств объекта для загрузки.
Возвращаемое значение
Примеры
// Load all of the content control properties
// 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,' +
'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);
}
});
load(propertyNames)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(propertyNames?: string | string[]): Word.ContentControl;
Параметры
- propertyNames
-
string | string[]
Строка с разделителями-запятыми или массив строк, указывающих свойства для загрузки.
Возвращаемое значение
load(propertyNamesAndPaths)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(propertyNamesAndPaths?: {
select?: string;
expand?: string;
}): Word.ContentControl;
Параметры
- propertyNamesAndPaths
-
{ select?: string; expand?: string; }
propertyNamesAndPaths.select
— это строка с разделителями-запятыми, указывающая загружаемые свойства, и propertyNamesAndPaths.expand
строка с разделителями-запятыми, указывающая загружаемые свойства навигации.
Возвращаемое значение
resetState()
Примечание
Этот API предоставляется в качестве предварительной версии для разработчиков и может быть изменен на основе полученных нами отзывов. Не используйте этот API в рабочей среде.
Сбрасывает состояние элемента управления содержимым.
resetState(): void;
Возвращаемое значение
void
Комментарии
[ Набор API: WordApi BETA (ТОЛЬКО ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ) ]
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/99-preview-apis/insert-and-change-content-controls.yaml
// Resets the state of the first content control.
await Word.run(async (context) => {
let firstContentControl = context.document.contentControls.getFirstOrNullObject();
await context.sync();
if (firstContentControl.isNullObject) {
console.warn("There are no content controls in this document.");
return;
}
firstContentControl.resetState();
firstContentControl.load("id");
await context.sync();
console.log(`Reset state of first content control with ID: ${firstContentControl.id}`);
});
search(searchText, searchOptions)
Выполняет поиск с указанным SearchOptions на область объекта элемента управления содержимым. Результат поиска — это коллекция объектов диапазона.
search(searchText: string, searchOptions?: Word.SearchOptions | {
ignorePunct?: boolean;
ignoreSpace?: boolean;
matchCase?: boolean;
matchPrefix?: boolean;
matchSuffix?: boolean;
matchWholeWord?: boolean;
matchWildcards?: boolean;
}): Word.RangeCollection;
Параметры
- searchText
-
string
Обязательно. Текст для поиска.
- searchOptions
-
Word.SearchOptions | { ignorePunct?: boolean; ignoreSpace?: boolean; matchCase?: boolean; matchPrefix?: boolean; matchSuffix?: boolean; matchWholeWord?: boolean; matchWildcards?: boolean; }
Необязательный параметр. Параметры поиска.
Возвращаемое значение
Комментарии
Примеры
// 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 select the first content control.
contentControls.items[0].select();
// Synchronize the document state by executing the queued commands,
// and return a promise to indicate task completion.
await context.sync();
console.log('Selected the first content control.');
}
});
select(selectionMode)
Выбирает элемент управления контентом. При этом Word переходит к выделенному фрагменту.
select(selectionMode?: Word.SelectionMode): void;
Параметры
- selectionMode
- Word.SelectionMode
Необязательный параметр. Режим выбора должен быть "Select", "Start" или "End". Значение по умолчанию — Select.
Возвращаемое значение
void
Комментарии
select(selectionModeString)
Выбирает элемент управления контентом. При этом Word переходит к выделенному фрагменту.
select(selectionModeString?: "Select" | "Start" | "End"): void;
Параметры
- selectionModeString
-
"Select" | "Start" | "End"
Необязательный параметр. Режим выбора должен быть "Select", "Start" или "End". Значение по умолчанию — Select.
Возвращаемое значение
void
Комментарии
set(properties, options)
Задает несколько свойств объекта одновременно. Можно передать обычный объект с соответствующими свойствами или другой объект API того же типа.
set(properties: Interfaces.ContentControlUpdateData, options?: OfficeExtension.UpdateOptions): void;
Параметры
- properties
- Word.Interfaces.ContentControlUpdateData
Объект JavaScript со свойствами, структурированными изоморфно по свойствам объекта, для которого вызывается метод .
- options
- OfficeExtension.UpdateOptions
Предоставляет возможность подавления ошибок, если объект свойств пытается задать какие-либо свойства, доступные только для чтения.
Возвращаемое значение
void
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/10-content-controls/insert-and-change-content-controls.yaml
// Adds title and colors to odd and even content controls and changes their appearance.
await Word.run(async (context) => {
// Get the complete sentence (as range) associated with the insertion point.
let evenContentControls = context.document.contentControls.getByTag("even");
let oddContentControls = context.document.contentControls.getByTag("odd");
evenContentControls.load("length");
oddContentControls.load("length");
await context.sync();
for (let i = 0; i < evenContentControls.items.length; i++) {
// Change a few properties and append a paragraph.
evenContentControls.items[i].set({
color: "red",
title: "Odd ContentControl #" + (i + 1),
appearance: Word.ContentControlAppearance.tags
});
evenContentControls.items[i].insertParagraph("This is an odd content control", "End");
}
for (let j = 0; j < oddContentControls.items.length; j++) {
// Change a few properties and append a paragraph.
oddContentControls.items[j].set({
color: "green",
title: "Even ContentControl #" + (j + 1),
appearance: "Tags"
});
oddContentControls.items[j].insertHtml("This is an <b>even</b> content control", "End");
}
await context.sync();
});
set(properties)
Задает несколько свойств объекта одновременно на основе существующего загруженного объекта.
set(properties: Word.ContentControl): void;
Параметры
- properties
- Word.ContentControl
Возвращаемое значение
void
setState(contentControlState)
Примечание
Этот API предоставляется в качестве предварительной версии для разработчиков и может быть изменен на основе полученных нами отзывов. Не используйте этот API в рабочей среде.
Задает состояние элемента управления содержимым.
setState(contentControlState: Word.ContentControlState): void;
Параметры
- contentControlState
- Word.ContentControlState
Задается состояние.
Возвращаемое значение
void
Комментарии
[ Набор API: WordApi BETA (ТОЛЬКО ПРЕДВАРИТЕЛЬНАЯ ВЕРСИЯ) ]
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/99-preview-apis/insert-and-change-content-controls.yaml
// Sets the state of the first content control.
await Word.run(async (context) => {
const state = ($("#state-to-set").val() as unknown) as Word.ContentControlState;
let firstContentControl = context.document.contentControls.getFirstOrNullObject();
await context.sync();
if (firstContentControl.isNullObject) {
console.warn("There are no content controls in this document.");
return;
}
firstContentControl.setState(state);
firstContentControl.load("id");
await context.sync();
console.log(`Set state of first content control with ID ${firstContentControl.id} to ${state}.`);
});
setState(contentControlStateString)
Примечание
Этот API предоставляется в качестве предварительной версии для разработчиков и может быть изменен на основе полученных нами отзывов. Не используйте этот API в рабочей среде.
Задает состояние элемента управления содержимым.
setState(contentControlStateString: "Error" | "Warning"): void;
Параметры
- contentControlStateString
-
"Error" | "Warning"
Задается состояние.
Возвращаемое значение
void
Комментарии
split(delimiters, multiParagraphs, trimDelimiters, trimSpacing)
Разделяет элемент управления содержимым на дочерние диапазоны с помощью разделителей.
split(delimiters: string[], multiParagraphs?: boolean, trimDelimiters?: boolean, trimSpacing?: boolean): Word.RangeCollection;
Параметры
- delimiters
-
string[]
Обязательно. Разделители в виде массива строк.
- multiParagraphs
-
boolean
Необязательный параметр. Указывает, может ли возвращаемый дочерний диапазон охватывать несколько абзацев. Значение по умолчанию равно false, указывающее, что границы абзаца также используются в качестве разделителей.
- trimDelimiters
-
boolean
Необязательный параметр. Указывает, следует ли обрезать разделители из диапазонов в коллекции диапазонов. Значение по умолчанию равно false, указывающее, что разделители включены в диапазоны, возвращаемые в коллекции диапазонов.
- trimSpacing
-
boolean
Необязательный параметр. Указывает, следует ли обрезать символы интервалов (пробелы, табуляции, разрывы столбцов и конце абзаца) от начала и конца диапазонов, возвращаемых в коллекции диапазонов. Значение по умолчанию равно false, указывающее, что символы с интервалами в начале и конце диапазонов включены в коллекцию диапазонов.
Возвращаемое значение
Комментарии
toJSON()
Переопределяет метод JavaScript toJSON()
, чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify()
. (JSON.stringify
в свою очередь вызывает toJSON
метод переданного ему объекта.) В то время как исходный Word.ContentControl
объект является объектом API, toJSON
метод возвращает обычный объект JavaScript (типизированный как Word.Interfaces.ContentControlData
), который содержит неглубокие копии всех загруженных дочерних свойств из исходного объекта.
toJSON(): Word.Interfaces.ContentControlData;
Возвращаемое значение
track()
Отслеживает объект для автоматической корректировки с учетом окружающих изменений в документе. Этот вызов является сокращением для context.trackedObjects.add(thisObject). Если вы используете этот объект в вызовах .sync
и вне последовательного выполнения пакета .run и получаете ошибку InvalidObjectPath при задании свойства или вызове метода для объекта, необходимо добавить объект в отслеживаемую коллекцию объектов при первом создании объекта. Если этот объект является частью коллекции, следует также отслеживать родительскую коллекцию.
track(): Word.ContentControl;
Возвращаемое значение
untrack()
Освобождает память, связанную с этим объектом, если он ранее отслеживался. Этот вызов является сокращенным для context.trackedObjects.remove(thisObject). Наличие большого количества отслеживаемых объектов замедляет ведущее приложение, поэтому не забывайте освобождать любые добавленные объекты после завершения их использования. Вызов потребуется выполнить context.sync()
до того, как выпуск памяти вступит в силу.
untrack(): Word.ContentControl;
Возвращаемое значение
Сведения о событии
onCommentAdded
Примечание
Этот API предоставляется в качестве предварительной версии для разработчиков и может быть изменен на основе полученных нами отзывов. Не используйте этот API в рабочей среде.
Происходит при добавлении новых комментариев.
readonly onCommentAdded: OfficeExtension.EventHandlers<Word.CommentEventArgs>;
Тип события
Комментарии
onCommentChanged
Примечание
Этот API предоставляется в качестве предварительной версии для разработчиков и может быть изменен на основе полученных нами отзывов. Не используйте этот API в рабочей среде.
Происходит при изменении комментария или его ответа.
readonly onCommentChanged: OfficeExtension.EventHandlers<Word.CommentEventArgs>;
Тип события
Комментарии
onCommentDeselected
Примечание
Этот API предоставляется в качестве предварительной версии для разработчиков и может быть изменен на основе полученных нами отзывов. Не используйте этот API в рабочей среде.
Происходит при отмене выбора комментария.
readonly onCommentDeselected: OfficeExtension.EventHandlers<Word.CommentEventArgs>;
Тип события
Комментарии
onCommentSelected
Примечание
Этот API предоставляется в качестве предварительной версии для разработчиков и может быть изменен на основе полученных нами отзывов. Не используйте этот API в рабочей среде.
Происходит при выборе комментария.
readonly onCommentSelected: OfficeExtension.EventHandlers<Word.CommentEventArgs>;
Тип события
Комментарии
onDataChanged
Происходит при изменении данных в элементе управления содержимым. Чтобы получить новый текст, загрузите этот элемент управления содержимым в обработчик. Чтобы получить старый текст, не загружайте его.
readonly onDataChanged: OfficeExtension.EventHandlers<Word.ContentControlDataChangedEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/10-content-controls/content-control-ondatachanged-event.yaml
await Word.run(async (context) => {
const contentControls: Word.ContentControlCollection = context.document.contentControls;
contentControls.load("items");
await context.sync();
// Register the onDataChanged event handler on each content control.
if (contentControls.items.length === 0) {
console.log("There aren't any content controls in this document so can't register event handlers.");
} else {
for (let i = 0; i < contentControls.items.length; i++) {
eventContexts[i] = contentControls.items[i].onDataChanged.add(contentControlDataChanged);
contentControls.items[i].track();
}
await context.sync();
console.log("Added event handlers for when data is changed in content controls.");
}
});
...
async function contentControlDataChanged(event: Word.ContentControlDataChangedEventArgs) {
await Word.run(async (context) => {
console.log(`${event.eventType} event detected. IDs of content controls where data was changed:`, event.ids);
});
}
onDeleted
Происходит при удалении элемента управления содержимым. Не загружайте этот элемент управления содержимым в обработчик, в противном случае вы не сможете получить его исходные свойства.
readonly onDeleted: OfficeExtension.EventHandlers<Word.ContentControlDeletedEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/10-content-controls/content-control-ondeleted-event.yaml
await Word.run(async (context) => {
const contentControls: Word.ContentControlCollection = context.document.contentControls;
contentControls.load("items");
await context.sync();
// Register the onDeleted event handler on each content control.
if (contentControls.items.length === 0) {
console.log("There aren't any content controls in this document so can't register event handlers.");
} else {
for (let i = 0; i < contentControls.items.length; i++) {
eventContexts[i] = contentControls.items[i].onDeleted.add(contentControlDeleted);
contentControls.items[i].track();
}
await context.sync();
console.log("Added event handlers for when content controls are deleted.");
}
});
...
async function contentControlDeleted(event: Word.ContentControlDeletedEventArgs) {
await Word.run(async (context) => {
console.log(`${event.eventType} event detected. IDs of content controls that were deleted:`, event.ids);
});
}
onEntered
Происходит при вводе элемента управления содержимым.
readonly onEntered: OfficeExtension.EventHandlers<Word.ContentControlEnteredEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/10-content-controls/content-control-onentered-event.yaml
await Word.run(async (context) => {
const contentControls: Word.ContentControlCollection = context.document.contentControls;
contentControls.load("items");
await context.sync();
// Register the onEntered event handler on each content control.
if (contentControls.items.length === 0) {
console.log("There aren't any content controls in this document so can't register event handlers.");
} else {
for (let i = 0; i < contentControls.items.length; i++) {
eventContexts[i] = contentControls.items[i].onEntered.add(contentControlEntered);
contentControls.items[i].track();
}
await context.sync();
console.log("Added event handlers for when the cursor is placed in content controls.");
}
});
...
async function contentControlEntered(event: Word.ContentControlEnteredEventArgs) {
await Word.run(async (context) => {
console.log(`${event.eventType} event detected. ID of content control that was entered: ${event.ids[0]}`);
});
}
onExited
Происходит при выходе из элемента управления содержимым, например при выходе курсора из элемента управления содержимым.
readonly onExited: OfficeExtension.EventHandlers<Word.ContentControlExitedEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/10-content-controls/content-control-onexited-event.yaml
await Word.run(async (context) => {
const contentControls: Word.ContentControlCollection = context.document.contentControls;
contentControls.load("items");
await context.sync();
// Register the onExited event handler on each content control.
if (contentControls.items.length === 0) {
console.log("There aren't any content controls in this document so can't register event handlers.");
} else {
for (let i = 0; i < contentControls.items.length; i++) {
eventContexts[i] = contentControls.items[i].onExited.add(contentControlExited);
contentControls.items[i].track();
}
await context.sync();
console.log("Added event handlers for when the cursor is removed from within content controls.");
}
});
...
async function contentControlExited(event: Word.ContentControlExitedEventArgs) {
await Word.run(async (context) => {
console.log(`${event.eventType} event detected. ID of content control that was exited: ${event.ids[0]}`);
});
}
onSelectionChanged
Происходит при изменении выделения в элементе управления содержимым.
readonly onSelectionChanged: OfficeExtension.EventHandlers<Word.ContentControlSelectionChangedEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/word/10-content-controls/content-control-onselectionchanged-event.yaml
await Word.run(async (context) => {
const contentControls: Word.ContentControlCollection = context.document.contentControls;
contentControls.load("items");
await context.sync();
if (contentControls.items.length === 0) {
console.log("There aren't any content controls in this document so can't register event handlers.");
} else {
for (let i = 0; i < contentControls.items.length; i++) {
eventContexts[i] = contentControls.items[i].onSelectionChanged.add(contentControlSelectionChanged);
contentControls.items[i].track();
}
await context.sync();
console.log("Added event handlers for when selections are changed in content controls.");
}
});
...
async function contentControlSelectionChanged(event: Word.ContentControlSelectionChangedEventArgs) {
await Word.run(async (context) => {
console.log(`${event.eventType} event detected. IDs of content controls where selection was changed:`, event.ids);
});
}
Office Add-ins