Excel.CustomXmlPart class
Stellt ein benutzerdefiniertes XML-Part-Objekt in einer Arbeitsmappe dar.
- Extends
Hinweise
Eigenschaften
context | Der Anforderungskontext, der dem -Objekt zugeordnet ist. Dadurch wird der Prozess des Add-Ins mit dem Prozess der Office-Hostanwendung verbunden. |
id | Die ID des benutzerdefinierten XML-Teils. |
namespace |
Der Namespace-URI des benutzerdefinierten XML-Teils. |
Methoden
delete() | Löscht die benutzerdefinierte XML-Komponente. |
get |
Ruft den vollständigen XML-Inhalt der benutzerdefinierten XML-Komponente ab. |
load(options) | Stellt einen Befehl zum Laden der angegebenen Eigenschaften des Objekts in die Warteschlange ein. Vor dem Lesen der Eigenschaften müssen Sie " |
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 " |
set |
Legt den vollständigen XML-Inhalt der benutzerdefinierten XML-Komponente fest. |
toJSON() | Überschreibt die JavaScript-Methode |
Details zur Eigenschaft
context
Der Anforderungskontext, der dem -Objekt zugeordnet ist. Dadurch wird der Prozess des Add-Ins mit dem Prozess der Office-Hostanwendung verbunden.
context: RequestContext;
Eigenschaftswert
id
Die ID des benutzerdefinierten XML-Teils.
readonly id: string;
Eigenschaftswert
string
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) => {
// You must have the xmlns attribute to populate the
// CustomXml.namespaceUri property.
const originalXml = "<Reviewers xmlns='http://schemas.contoso.com/review/1.0'><Reviewer>Juan</Reviewer><Reviewer>Hong</Reviewer><Reviewer>Sally</Reviewer></Reviewers>";
const customXmlPart = context.workbook.customXmlParts.add(originalXml);
customXmlPart.load("id");
const xmlBlob = customXmlPart.getXml();
await context.sync();
const readableXml = addLineBreaksToXML(xmlBlob.value);
$("#display-xml").text(readableXml);
// Store the XML part's ID in a setting.
const settings = context.workbook.settings;
settings.add("ContosoReviewXmlPartId", customXmlPart.id);
await context.sync();
});
namespaceUri
Der Namespace-URI des benutzerdefinierten XML-Teils.
readonly namespaceUri: string;
Eigenschaftswert
string
Hinweise
Details zur Methode
delete()
Löscht die benutzerdefinierte XML-Komponente.
delete(): void;
Gibt zurück
void
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) {
$("#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();
}
});
getXml()
Ruft den vollständigen XML-Inhalt der benutzerdefinierten XML-Komponente ab.
getXml(): OfficeExtension.ClientResult<string>;
Gibt zurück
OfficeExtension.ClientResult<string>
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) => {
// You must have the xmlns attribute to populate the
// CustomXml.namespaceUri property.
const originalXml = "<Reviewers xmlns='http://schemas.contoso.com/review/1.0'><Reviewer>Juan</Reviewer><Reviewer>Hong</Reviewer><Reviewer>Sally</Reviewer></Reviewers>";
const customXmlPart = context.workbook.customXmlParts.add(originalXml);
customXmlPart.load("id");
const xmlBlob = customXmlPart.getXml();
await context.sync();
const readableXml = addLineBreaksToXML(xmlBlob.value);
$("#display-xml").text(readableXml);
// Store the XML part's ID in a setting.
const settings = context.workbook.settings;
settings.add("ContosoReviewXmlPartId", customXmlPart.id);
await context.sync();
});
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.CustomXmlPartLoadOptions): Excel.CustomXmlPart;
Parameter
Stellt Optionen dafür bereit, welche Eigenschaften des -Objekts geladen werden sollen.
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.CustomXmlPart;
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?: {
select?: string;
expand?: string;
}): Excel.CustomXmlPart;
Parameter
- propertyNamesAndPaths
-
{ select?: string; expand?: string; }
propertyNamesAndPaths.select
ist eine durch Trennzeichen getrennte Zeichenfolge, die die zu ladenden Eigenschaften angibt, und propertyNamesAndPaths.expand
eine durch Trennzeichen getrennte Zeichenfolge, die die zu ladenden Navigationseigenschaften angibt.
Gibt zurück
setXml(xml)
Legt den vollständigen XML-Inhalt der benutzerdefinierten XML-Komponente fest.
setXml(xml: string): void;
Parameter
- xml
-
string
XML-Inhalt für das Teil.
Gibt zurück
void
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) {
const customXmlPart = context.workbook.customXmlParts.getItem(xmlPartIDSetting.value);
// The setXml method does a whole-for-whole replacement
// of the entire XML.
customXmlPart.setXml("<Reviewers xmlns='http://schemas.contoso.com/review/1.0'><Reviewer>John</Reviewer><Reviewer>Hitomi</Reviewer></Reviewers>");
const xmlBlob = customXmlPart.getXml();
await context.sync();
const readableXml = addLineBreaksToXML(xmlBlob.value);
$("#display-xml").text(readableXml);
await context.sync();
}
});
toJSON()
Überschreibt die JavaScript-Methode toJSON()
, um eine nützlichere Ausgabe bereitzustellen, wenn ein API-Objekt an JSON.stringify()
übergeben wird. (JSON.stringify
ruft wiederum die toJSON
-Methode des Objekts auf, das an das Objekt übergeben wird.) Während das ursprüngliche Excel.CustomXmlPart-Objekt ein API-Objekt ist, gibt die toJSON
Methode ein einfaches JavaScript-Objekt (typisiert als Excel.Interfaces.CustomXmlPartData
) zurück, das flache Kopien aller geladenen untergeordneten Eigenschaften aus dem ursprünglichen Objekt enthält.
toJSON(): Excel.Interfaces.CustomXmlPartData;
Gibt zurück
Office Add-ins