Excel.CustomXmlPartCollection class
Collection de composants XML personnalisés.
- Extends
Remarques
[ Ensemble d’API : ExcelApi 1.5 ]
Propriétés
context | Contexte de requête associé à l’objet . Cela connecte le processus du complément au processus de l’application hôte Office. |
items | Obtient l’élément enfant chargé dans cette collection de sites. |
Méthodes
add(xml) | Ajoute une nouvelle partie XML personnalisée au classeur. |
get |
Obtient une nouvelle collection limitée de parties XML personnalisées dont les espaces de noms correspondent à l’espace de noms donné. |
get |
Obtient le nombre de parties XML personnalisées dans la collection. |
get |
Obtient une partie XML personnalisée en fonction de son ID. |
get |
Obtient une partie XML personnalisée en fonction de son ID. Si n’existe |
load(options) | Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter |
load(property |
Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter |
load(property |
Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter |
toJSON() | Remplace la méthode JavaScript |
Détails de la propriété
context
Contexte de requête associé à l’objet . Cela connecte le processus du complément au processus de l’application hôte Office.
context: RequestContext;
Valeur de propriété
items
Obtient l’élément enfant chargé dans cette collection de sites.
readonly items: Excel.CustomXmlPart[];
Valeur de propriété
Détails de la méthode
add(xml)
Ajoute une nouvelle partie XML personnalisée au classeur.
add(xml: string): Excel.CustomXmlPart;
Paramètres
- xml
-
string
Contenu XML. Doit être un fragment XML valide.
Retours
Remarques
[ Ensemble d’API : ExcelApi 1.5 ]
Exemples
// 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();
});
getByNamespace(namespaceUri)
Obtient une nouvelle collection limitée de parties XML personnalisées dont les espaces de noms correspondent à l’espace de noms donné.
getByNamespace(namespaceUri: string): Excel.CustomXmlPartScopedCollection;
Paramètres
- namespaceUri
-
string
Il doit s’agir d’un URI de schéma complet ; par exemple, "http://schemas.contoso.com/review/1.0" ;.
Retours
Remarques
[ Ensemble d’API : ExcelApi 1.5 ]
Exemples
// 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();
});
getCount()
Obtient le nombre de parties XML personnalisées dans la collection.
getCount(): OfficeExtension.ClientResult<number>;
Retours
OfficeExtension.ClientResult<number>
Remarques
getItem(id)
Obtient une partie XML personnalisée en fonction de son ID.
getItem(id: string): Excel.CustomXmlPart;
Paramètres
- id
-
string
ID de l’objet à récupérer.
Retours
Remarques
[ Ensemble d’API : ExcelApi 1.5 ]
Exemples
// 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();
}
});
getItemOrNullObject(id)
Obtient une partie XML personnalisée en fonction de son ID. Si n’existe CustomXmlPart
pas, cette méthode retourne un objet avec sa isNullObject
propriété définie sur true
. Pour plus d’informations, consultez *Méthodes et propriétés OrNullObject.
getItemOrNullObject(id: string): Excel.CustomXmlPart;
Paramètres
- id
-
string
ID de l’objet à récupérer.
Retours
Remarques
load(options)
Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync()
avant de lire les propriétés.
load(options?: Excel.Interfaces.CustomXmlPartCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions): Excel.CustomXmlPartCollection;
Paramètres
- options
-
Excel.Interfaces.CustomXmlPartCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions
Fournit des options pour les propriétés de l’objet à charger.
Retours
load(propertyNames)
Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync()
avant de lire les propriétés.
load(propertyNames?: string | string[]): Excel.CustomXmlPartCollection;
Paramètres
- propertyNames
-
string | string[]
Chaîne délimitée par des virgules ou tableau de chaînes qui spécifient les propriétés à charger.
Retours
load(propertyNamesAndPaths)
Files d’attente de la commande pour charger les propriétés de l’objet spécifié. Vous devez contacter context.sync()
avant de lire les propriétés.
load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Excel.CustomXmlPartCollection;
Paramètres
- propertyNamesAndPaths
- OfficeExtension.LoadOption
propertyNamesAndPaths.select
est une chaîne délimitée par des virgules qui spécifie les propriétés à charger, et propertyNamesAndPaths.expand
est une chaîne délimitée par des virgules qui spécifie les propriétés de navigation à charger.
Retours
toJSON()
Remplace la méthode JavaScript toJSON()
afin de fournir une sortie plus utile lorsqu’un objet API est passé à JSON.stringify()
. (JSON.stringify
appelle à son tour la toJSON
méthode de l’objet qui lui est passé.) Alors que l’objet d’origine Excel.CustomXmlPartCollection
est un objet API, la toJSON
méthode renvoie un objet JavaScript brut (typé en tant Excel.Interfaces.CustomXmlPartCollectionData
que ) qui contient un tableau « items » avec des copies superficielles de toutes les propriétés chargées à partir des éléments de la collection.
toJSON(): Excel.Interfaces.CustomXmlPartCollectionData;