Excel.CustomXmlPartScopedCollection class
Коллекция настраиваемых XML-частей с заданной областью. Коллекция с заданной областью является результатом некоторых операций (например, фильтрация по пространству имен). Коллекция с заданной областью больше не может быть ограничена.
- Extends
Комментарии
Свойства
context | Контекст запроса, связанный с объектом . Это соединяет процесс надстройки с процессом ведущего приложения Office. |
items | Получает загруженные дочерние элементы в этой коллекции. |
Методы
get |
Получает количество частей CustomXML в этой коллекции. |
get |
Получает пользовательскую XML-часть по идентификатору. |
get |
Получает пользовательскую XML-часть по идентификатору.
|
get |
Если коллекция содержит ровно один элемент, этот метод возвращает его. В противном случае этот метод выдает ошибку. |
get |
Если коллекция содержит ровно один элемент, этот метод возвращает его. В противном случае этот метод возвращает |
load(options) | Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
toJSON() | Переопределяет метод JavaScript |
Сведения о свойстве
context
Контекст запроса, связанный с объектом . Это соединяет процесс надстройки с процессом ведущего приложения Office.
context: RequestContext;
Значение свойства
items
Получает загруженные дочерние элементы в этой коллекции.
readonly items: Excel.CustomXmlPart[];
Значение свойства
Сведения о методе
getCount()
Получает количество частей CustomXML в этой коллекции.
getCount(): OfficeExtension.ClientResult<number>;
Возвращаемое значение
OfficeExtension.ClientResult<number>
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/18-custom-xml-parts/test-xml-for-unique-namespace.yaml
await Excel.run(async (context) => {
$("#display-xml").text("");
const contosoNamespace = "http://schemas.contoso.com/review/1.0";
const customXmlParts = context.workbook.customXmlParts;
const filteredXmlParts = customXmlParts.getByNamespace(contosoNamespace);
const numberOfPartsInNamespace = filteredXmlParts.getCount();
await context.sync();
if (numberOfPartsInNamespace.value == 1) {
const onlyXmlPartInNamespace = filteredXmlParts.getOnlyItem();
const xmlBlob = onlyXmlPartInNamespace.getXml();
await context.sync();
// Make it a bit more readable.
const readableXml = xmlBlob.value.replace(/></g, ">\n<");
$("#display-xml").text(`The only XML part in the namespace ${contosoNamespace} is:
${readableXml}`);
} else {
console.log(`There are ${numberOfPartsInNamespace.value} XML parts with namespace ${contosoNamespace}. There should be exactly 1.`);
}
await context.sync();
});
getItem(id)
Получает пользовательскую XML-часть по идентификатору.
getItem(id: string): Excel.CustomXmlPart;
Параметры
- id
-
string
Идентификатор извлекаемого объекта.
Возвращаемое значение
Комментарии
getItemOrNullObject(id)
Получает пользовательскую XML-часть по идентификатору.
CustomXmlPart
Если объект не существует, то этот метод возвращает объект со свойством true
isNullObject
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
getItemOrNullObject(id: string): Excel.CustomXmlPart;
Параметры
- id
-
string
Идентификатор извлекаемого объекта.
Возвращаемое значение
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/18-custom-xml-parts/create-set-get-and-delete-custom-xml-parts.yaml
await Excel.run(async (context) => {
const settings = context.workbook.settings;
const xmlPartIDSetting = settings.getItemOrNullObject("ContosoReviewXmlPartId").load("value");
await context.sync();
if (xmlPartIDSetting.value) {
let customXmlPart = context.workbook.customXmlParts.getItem(xmlPartIDSetting.value);
const xmlBlob = customXmlPart.getXml();
customXmlPart.delete();
customXmlPart = context.workbook.customXmlParts.getItemOrNullObject(xmlPartIDSetting.value);
await context.sync();
if (customXmlPart.isNullObject) {
$("#display-xml").text(`The XML part with the id ${xmlPartIDSetting.value} has been deleted.`);
// Delete the unneeded setting too.
xmlPartIDSetting.delete();
} else {
const readableXml = addLineBreaksToXML(xmlBlob.value);
const strangeMessage = `This is strange. The XML part with the id ${xmlPartIDSetting.value} has not been deleted:\n${readableXml}`
$("#display-xml").text(strangeMessage);
}
await context.sync();
}
});
getOnlyItem()
Если коллекция содержит ровно один элемент, этот метод возвращает его. В противном случае этот метод выдает ошибку.
getOnlyItem(): Excel.CustomXmlPart;
Возвращаемое значение
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/18-custom-xml-parts/test-xml-for-unique-namespace.yaml
await Excel.run(async (context) => {
$("#display-xml").text("");
const contosoNamespace = "http://schemas.contoso.com/review/1.0";
const customXmlParts = context.workbook.customXmlParts;
const filteredXmlParts = customXmlParts.getByNamespace(contosoNamespace);
const numberOfPartsInNamespace = filteredXmlParts.getCount();
await context.sync();
if (numberOfPartsInNamespace.value == 1) {
const onlyXmlPartInNamespace = filteredXmlParts.getOnlyItem();
const xmlBlob = onlyXmlPartInNamespace.getXml();
await context.sync();
// Make it a bit more readable.
const readableXml = xmlBlob.value.replace(/></g, ">\n<");
$("#display-xml").text(`The only XML part in the namespace ${contosoNamespace} is:
${readableXml}`);
} else {
console.log(`There are ${numberOfPartsInNamespace.value} XML parts with namespace ${contosoNamespace}. There should be exactly 1.`);
}
await context.sync();
});
getOnlyItemOrNullObject()
Если коллекция содержит ровно один элемент, этот метод возвращает его. В противном случае этот метод возвращает null
.
getOnlyItemOrNullObject(): Excel.CustomXmlPart;
Возвращаемое значение
Комментарии
load(options)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(options?: Excel.Interfaces.CustomXmlPartScopedCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions): Excel.CustomXmlPartScopedCollection;
Параметры
- options
-
Excel.Interfaces.CustomXmlPartScopedCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions
Предоставляет параметры свойств объекта для загрузки.
Возвращаемое значение
load(propertyNames)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(propertyNames?: string | string[]): Excel.CustomXmlPartScopedCollection;
Параметры
- propertyNames
-
string | string[]
Строка с разделителями-запятыми или массив строк, указывающих свойства для загрузки.
Возвращаемое значение
load(propertyNamesAndPaths)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Excel.CustomXmlPartScopedCollection;
Параметры
- propertyNamesAndPaths
- OfficeExtension.LoadOption
propertyNamesAndPaths.select
— это строка с разделителями-запятыми, указывающая загружаемые свойства, и propertyNamesAndPaths.expand
строка с разделителями-запятыми, указывающая загружаемые свойства навигации.
Возвращаемое значение
toJSON()
Переопределяет метод JavaScript toJSON()
, чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify()
. (JSON.stringify
в свою очередь вызывает toJSON
метод переданного ему объекта.) В то время как исходный Excel.CustomXmlPartScopedCollection
объект является объектом API, toJSON
метод возвращает обычный объект JavaScript (типизированный как Excel.Interfaces.CustomXmlPartScopedCollectionData
), содержащий массив "items" с мелкими копиями всех загруженных свойств из элементов коллекции.
toJSON(): Excel.Interfaces.CustomXmlPartScopedCollectionData;
Возвращаемое значение
Office Add-ins