Word.ContentControlListItem class
Представляет элемент списка в элементе управления содержимым раскрывающегося списка или поля со списком.
- Extends
Комментарии
Используется
- Word. ComboBoxContentControl: addListItem
- Word. ContentControlListItemCollection: getFirst, getFirstOrNullObject, items
- Word. DropDownListContentControl: addListItem
Примеры
// 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
// Deletes the provided list item from the first dropdown list content control in the selection.
await Word.run(async (context) => {
const listItemText = (document.getElementById("item-to-delete") as HTMLInputElement).value.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;
}
}
let selectedDropdownList: Word.DropDownListContentControl = selectedContentControl.dropDownListContentControl;
selectedDropdownList.listItems.load("items/*");
await context.sync();
let listItems: Word.ContentControlListItemCollection = selectedContentControl.dropDownListContentControl.listItems;
let itemToDelete: Word.ContentControlListItem = listItems.items.find((item) => item.displayText === listItemText);
if (!itemToDelete) {
console.warn(`List item doesn't exist in control with ID ${selectedContentControl.id}: ${listItemText}`)
return;
}
itemToDelete.delete();
await context.sync();
console.log(`List item deleted from control with ID ${selectedContentControl.id}: ${listItemText}`);
});
Свойства
| context | Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office. |
| display |
Определяет отображаемый текст элемента списка для элемента управления содержимым раскрывающегося списка или поля со списком. |
| index | Определяет расположение индекса элемента списка управления содержимым в коллекции элементов списка. |
| value | Определяет программное значение элемента списка для элемента управления содержимым раскрывающегося списка или поля со списком. |
Методы
| delete() | Обновляет папку списка с использованием внесенных изменений. |
| load(options) | Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
| select() | Выбирает элемент списка и задает для текста элемента управления содержимым значение элемента списка. |
| set(properties, options) | Задает несколько свойств объекта одновременно. Вы можете передать либо простой объект с соответствующими свойствами, либо другой объект API того же типа. |
| set(properties) | Одновременно задает несколько свойств объекта на основе существующего загруженного объекта. |
| toJSON() | Переопределяет метод JavaScript |
| track() | Отслеживает объект для автоматической корректировки с учетом окружающих изменений в документе. Этот вызов является сокращением от context.trackedObjects.add(thisObject). Если вы используете этот объект во всех |
| untrack() | Освобождает память, связанную с этим объектом, если он ранее отслеживался. Этот вызов является сокращением от context.trackedObjects.remove(thisObject). Наличие большого количества отслеживаемых объектов замедляет ведущее приложение, поэтому не забывайте освобождать любые добавленные объекты после завершения их использования. Вам нужно позвонить |
Сведения о свойстве
context
Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office.
context: RequestContext;
Значение свойства
displayText
Определяет отображаемый текст элемента списка для элемента управления содержимым раскрывающегося списка или поля со списком.
displayText: string;
Значение свойства
string
Комментарии
Примеры
// 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
// Deletes the provided list item from the first dropdown list content control in the selection.
await Word.run(async (context) => {
const listItemText = (document.getElementById("item-to-delete") as HTMLInputElement).value.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;
}
}
let selectedDropdownList: Word.DropDownListContentControl = selectedContentControl.dropDownListContentControl;
selectedDropdownList.listItems.load("items/*");
await context.sync();
let listItems: Word.ContentControlListItemCollection = selectedContentControl.dropDownListContentControl.listItems;
let itemToDelete: Word.ContentControlListItem = listItems.items.find((item) => item.displayText === listItemText);
if (!itemToDelete) {
console.warn(`List item doesn't exist in control with ID ${selectedContentControl.id}: ${listItemText}`)
return;
}
itemToDelete.delete();
await context.sync();
console.log(`List item deleted from control with ID ${selectedContentControl.id}: ${listItemText}`);
});
index
Определяет расположение индекса элемента списка управления содержимым в коллекции элементов списка.
index: number;
Значение свойства
number
Комментарии
value
Определяет программное значение элемента списка для элемента управления содержимым раскрывающегося списка или поля со списком.
value: string;
Значение свойства
string
Комментарии
Сведения о методе
delete()
Обновляет папку списка с использованием внесенных изменений.
delete(): void;
Возвращаемое значение
void
Комментарии
Примеры
// 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
// Deletes the provided list item from the first combo box content control in the selection.
await Word.run(async (context) => {
const listItemText = (document.getElementById("item-to-delete") as HTMLInputElement).value.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;
}
}
let selectedComboBox: Word.ComboBoxContentControl = selectedContentControl.comboBoxContentControl;
selectedComboBox.listItems.load("items/*");
await context.sync();
let listItems: Word.ContentControlListItemCollection = selectedContentControl.comboBoxContentControl.listItems;
let itemToDelete: Word.ContentControlListItem = listItems.items.find((item) => item.displayText === listItemText);
if (!itemToDelete) {
console.warn(`List item doesn't exist in control with ID ${selectedContentControl.id}: ${listItemText}`);
return;
}
itemToDelete.delete();
await context.sync();
console.log(`List item deleted from control with ID ${selectedContentControl.id}: ${listItemText}`);
});
load(options)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(options?: Word.Interfaces.ContentControlListItemLoadOptions): Word.ContentControlListItem;
Параметры
Предоставляет параметры для загружаемых свойств объекта.
Возвращаемое значение
load(propertyNames)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(propertyNames?: string | string[]): Word.ContentControlListItem;
Параметры
- propertyNames
-
string | string[]
Строка с разделителями-запятыми или массив строк, которые определяют свойства для загрузки.
Возвращаемое значение
load(propertyNamesAndPaths)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().
load(propertyNamesAndPaths?: {
select?: string;
expand?: string;
}): Word.ContentControlListItem;
Параметры
- propertyNamesAndPaths
-
{ select?: string; expand?: string; }
propertyNamesAndPaths.select — это строка с разделителями-запятыми, указывающая загружаемые свойства, и строка propertyNamesAndPaths.expand через запятую, указывающая свойства навигации для загрузки.
Возвращаемое значение
select()
Выбирает элемент списка и задает для текста элемента управления содержимым значение элемента списка.
select(): void;
Возвращаемое значение
void
Комментарии
set(properties, options)
Задает несколько свойств объекта одновременно. Вы можете передать либо простой объект с соответствующими свойствами, либо другой объект API того же типа.
set(properties: Interfaces.ContentControlListItemUpdateData, options?: OfficeExtension.UpdateOptions): void;
Параметры
Объект JavaScript со свойствами, структурированными изоморфно свойствам объекта, для которого вызывается метод.
- options
- OfficeExtension.UpdateOptions
Предоставляет возможность подавления ошибок, если объект properties пытается задать какие-либо свойства только для чтения.
Возвращаемое значение
void
set(properties)
Одновременно задает несколько свойств объекта на основе существующего загруженного объекта.
set(properties: Word.ContentControlListItem): void;
Параметры
- properties
- Word.ContentControlListItem
Возвращаемое значение
void
toJSON()
Переопределяет метод JavaScript toJSON() , чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify(). (JSON.stringify, в свою очередь, вызывает toJSON метод переданного ему объекта.) В то время как исходный Word.ContentControlListItem объект является объектом API, toJSON метод возвращает простой объект JavaScript (типизированный как Word.Interfaces.ContentControlListItemData), который содержит неглубокие копии любых загруженных дочерних свойств исходного объекта.
toJSON(): Word.Interfaces.ContentControlListItemData;
Возвращаемое значение
track()
Отслеживает объект для автоматической корректировки с учетом окружающих изменений в документе. Этот вызов является сокращением от context.trackedObjects.add(thisObject). Если вы используете этот объект во всех .sync вызовах и вне последовательного выполнения пакета ".run" и получаете сообщение об ошибке "InvalidObjectPath" при установке свойства или вызове метода объекта, необходимо добавить объект в коллекцию отслеживаемых объектов при его первом создании. Если этот объект является частью семейства, следует также отслеживать родительскую коллекцию.
track(): Word.ContentControlListItem;
Возвращаемое значение
untrack()
Освобождает память, связанную с этим объектом, если он ранее отслеживался. Этот вызов является сокращением от context.trackedObjects.remove(thisObject). Наличие большого количества отслеживаемых объектов замедляет ведущее приложение, поэтому не забывайте освобождать любые добавленные объекты после завершения их использования. Вам нужно позвонить context.sync() , прежде чем освобождение памяти вступит в силу.
untrack(): Word.ContentControlListItem;