Excel.CustomXmlPartScopedCollection class
Eine bereichsbezogene Auflistung benutzerdefinierter XML-Komponenten. Eine bereichsbezogene Auflistung ist das Ergebnis eines Vorgangs (z. B. Filtern nach Namespace). Eine bereichsbezogene Sammlung kann nicht weiter eingegrenzt werden.
- Extends
Eigenschaften
| context | Der dem Objekt zugeordnete Anforderungskontext. Dadurch wird der Prozess des Add-Ins mit dem Prozess der Office-Hostanwendung verbunden. |
| items | Ruft die geladenen untergeordneten Elemente in dieser Sammlung ab. |
Methoden
| get |
Ruft die Anzahl von CustomXml-Komponenten in dieser Sammlung ab. |
| get |
Ruft eine benutzerdefinierte XML-Komponente basierend auf ihrer ID ab. |
| get |
Ruft eine benutzerdefinierte XML-Komponente basierend auf ihrer ID ab. Wenn das |
| get |
Wenn die Sammlung genau ein Element enthält, gibt diese Methode es zurück. Andernfalls führt diese Methode zu einem Fehler. |
| get |
Wenn die Sammlung genau ein Element enthält, gibt diese Methode es zurück. Andernfalls gibt diese Methode zurück |
| load(options) | Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie " |
| load(property |
Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie " |
| load(property |
Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie " |
| toJSON() | Überschreibt die JavaScript-Methode |
Details zur Eigenschaft
context
Der dem Objekt zugeordnete Anforderungskontext. Dadurch wird der Prozess des Add-Ins mit dem Prozess der Office-Hostanwendung verbunden.
context: RequestContext;
Eigenschaftswert
items
Ruft die geladenen untergeordneten Elemente in dieser Sammlung ab.
readonly items: Excel.CustomXmlPart[];
Eigenschaftswert
Details zur Methode
getCount()
Ruft die Anzahl von CustomXml-Komponenten in dieser Sammlung ab.
getCount(): OfficeExtension.ClientResult<number>;
Gibt zurück
OfficeExtension.ClientResult<number>
Hinweise
Beispiele
// 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) => {
document.getElementById("display-xml").textContent = "";
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<");
document.getElementById("display-xml").textContent = `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)
Ruft eine benutzerdefinierte XML-Komponente basierend auf ihrer ID ab.
getItem(id: string): Excel.CustomXmlPart;
Parameter
- id
-
string
ID des abzurufenden Objekts.
Gibt zurück
Hinweise
getItemOrNullObject(id)
Ruft eine benutzerdefinierte XML-Komponente basierend auf ihrer ID ab. Wenn das CustomXmlPart nicht vorhanden ist, gibt diese Methode ein Objekt zurück, dessen isNullObject Eigenschaft auf festgelegt ist true. Weitere Informationen finden Sie unter *OrNullObject-Methoden und -Eigenschaften.
getItemOrNullObject(id: string): Excel.CustomXmlPart;
Parameter
- id
-
string
ID des abzurufenden Objekts.
Gibt zurück
Hinweise
Beispiele
// 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) {
document.getElementById("display-xml").textContent = `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}`
document.getElementById("display-xml").textContent = strangeMessage;
}
await context.sync();
}
});
getOnlyItem()
Wenn die Sammlung genau ein Element enthält, gibt diese Methode es zurück. Andernfalls führt diese Methode zu einem Fehler.
getOnlyItem(): Excel.CustomXmlPart;
Gibt zurück
Hinweise
Beispiele
// 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) => {
document.getElementById("display-xml").textContent = "";
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<");
document.getElementById("display-xml").textContent = `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()
Wenn die Sammlung genau ein Element enthält, gibt diese Methode es zurück. Andernfalls gibt diese Methode zurück null.
getOnlyItemOrNullObject(): Excel.CustomXmlPart;
Gibt zurück
Hinweise
load(options)
Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.
load(options?: Excel.Interfaces.CustomXmlPartScopedCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions): Excel.CustomXmlPartScopedCollection;
Parameter
- options
-
Excel.Interfaces.CustomXmlPartScopedCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions
Stellt Optionen für die zu ladenden Eigenschaften des Objekts bereit.
Gibt zurück
load(propertyNames)
Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.
load(propertyNames?: string | string[]): Excel.CustomXmlPartScopedCollection;
Parameter
- propertyNames
-
string | string[]
Eine durch Trennzeichen getrennte Zeichenfolge oder ein Array von Zeichenfolgen, die die zu ladenden Eigenschaften angeben.
Gibt zurück
load(propertyNamesAndPaths)
Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie "context.sync()" aufrufen.
load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Excel.CustomXmlPartScopedCollection;
Parameter
- propertyNamesAndPaths
- OfficeExtension.LoadOption
propertyNamesAndPaths.select ist eine durch Kommas getrennte Zeichenfolge, die die zu ladenden Eigenschaften angibt, und propertyNamesAndPaths.expand eine durch Kommas getrennte Zeichenfolge, die die zu ladenden Navigationseigenschaften angibt.
Gibt zurück
toJSON()
Überschreibt die JavaScript-Methode toJSON() , um eine nützlichere Ausgabe bereitzustellen, wenn ein API-Objekt an JSON.stringify()übergeben wird. (JSON.stringifyruft wiederum die toJSON Methode des Objekts auf, das an sie übergeben wird.) Während das ursprüngliche Excel.CustomXmlPartScopedCollection Objekt ein API-Objekt ist, gibt die toJSON Methode ein einfaches JavaScript-Objekt (typisiert als Excel.Interfaces.CustomXmlPartScopedCollectionData) zurück, das ein "items"-Array mit flachen Kopien aller geladenen Eigenschaften aus den Elementen der Sammlung enthält.
toJSON(): Excel.Interfaces.CustomXmlPartScopedCollectionData;