Office.CustomXmlPart interface

注解

应用程序:Word

属性

builtIn

如果内置了自定义 XML 部件,则为 True;否则为 false。

id

获取 CustomXMLPart 的 GUID。

namespaceManager

获取针对当前 CustomXmlPart 使用的命名空间前缀映射 (office.CustomXmlPrefixMappings) 。

方法

addHandlerAsync(eventType, handler, options, callback)

使用指定的事件类型将事件处理程序添加到 对象。

addHandlerAsync(eventType, handler, callback)

使用指定的事件类型将事件处理程序添加到 对象。

deleteAsync(options, callback)

删除自定义 XML 部件。

deleteAsync(callback)

删除自定义 XML 部件。

getNodesAsync(xPath, options, callback)

异步获取此自定义 XML 部件中与指定 XPath 匹配的任何 CustomXmlNodes。

getNodesAsync(xPath, callback)

异步获取此自定义 XML 部件中与指定 XPath 匹配的任何 CustomXmlNodes。

getXmlAsync(options, callback)

异步获取此自定义 XML 部件内的 XML。

getXmlAsync(callback)

异步获取此自定义 XML 部件内的 XML。

removeHandlerAsync(eventType, handler, options, callback)

删除指定事件类型的事件处理程序。

removeHandlerAsync(eventType, handler, callback)

删除指定事件类型的事件处理程序。

属性详细信息

builtIn

如果内置了自定义 XML 部件,则为 True;否则为 false。

builtIn: boolean;

属性值

boolean

示例

function showXMLPartBuiltIn() {
    Office.context.document.customXmlParts.getByIdAsync(
        "{3BC85265-09D6-4205-B665-8EB239A8B9A1}", function (result) {
        const xmlPart = result.value;
        write(xmlPart.builtIn);
    });
}

// Function that writes to a div with id='message' on the page.
function write(message){
    document.getElementById('message').innerText += message; 
}

id

获取 CustomXMLPart 的 GUID。

id: string;

属性值

string

示例

function showXMLPartBuiltId() {
    Office.context.document.customXmlParts.getByIdAsync(
        "{3BC85265-09D6-4205-B665-8EB239A8B9A1}", function (result) {
        const xmlPart = result.value;
        write(xmlPart.id);
    });
}
// Function that writes to a div with id='message' on the page.
function write(message){
    document.getElementById('message').innerText += message; 
}

namespaceManager

获取针对当前 CustomXmlPart 使用的命名空间前缀映射 (office.CustomXmlPrefixMappings) 。

namespaceManager: CustomXmlPrefixMappings;

属性值

示例

function setXMLPartNamespaceManagerNamespace() {
    Office.context.document.customXmlParts.getByIdAsync(
        "{3BC85265-09D6-4205-B665-8EB239A8B9A1}", function (result) {
        const xmlPart = result.value;
        xmlPart.namespaceManager.addNamespaceAsync("myPrefix", "myNamespace");
    });
}

方法详细信息

addHandlerAsync(eventType, handler, options, callback)

使用指定的事件类型将事件处理程序添加到 对象。

addHandlerAsync(eventType: Office.EventType, handler: (result: any) => void, options?: Office.AsyncContextOptions, callback?: (result: AsyncResult<void>) => void): void;

参数

eventType
Office.EventType

指定要添加事件的类型。 对于 CustomXmlPart 对象,eventType 参数可以指定为 Office.EventType.NodeDeletedOffice.EventType.NodeInsertedOffice.EventType.NodeReplaced

handler

(result: any) => void

要添加的事件处理程序函数,其唯一的参数类型为 Office.NodeDeletedEventArgsOffice.NodeInsertedEventArgsOffice.NodeReplacedEventArgs

options
Office.AsyncContextOptions

提供一个选项,用于保留任何类型的上下文数据(不变),以便在回调中使用。

callback

(result: Office.AsyncResult<void>) => void

可选。 回调返回时调用的函数,其唯一参数的类型为 Office.AsyncResult

返回

void

注解

要求集CustomXmlParts

只要每个事件处理程序函数的名称唯一,就可以为指定的 eventType 添加多个事件处理程序。

addHandlerAsync(eventType, handler, callback)

使用指定的事件类型将事件处理程序添加到 对象。

addHandlerAsync(eventType: Office.EventType, handler: (result: any) => void, callback?: (result: AsyncResult<void>) => void): void;

参数

eventType
Office.EventType

指定要添加事件的类型。 对于 CustomXmlPart 对象,eventType 参数可以指定为 Office.EventType.NodeDeletedOffice.EventType.NodeInsertedOffice.EventType.NodeReplaced

handler

(result: any) => void

要添加的事件处理程序函数,其唯一的参数类型为 Office.NodeDeletedEventArgsOffice.NodeInsertedEventArgsOffice.NodeReplacedEventArgs

callback

(result: Office.AsyncResult<void>) => void

可选。 回调返回时调用的函数,其唯一参数的类型为 Office.AsyncResult

返回

void

注解

要求集CustomXmlParts

只要每个事件处理程序函数的名称唯一,就可以为指定的 eventType 添加多个事件处理程序。

示例

// To add an event handler for the NodeDeleted event, use the addHandlerAsync method of the CustomXmlPart object.
function addNodeDeletedEvent() {
    Office.context.document.customXmlParts.getByIdAsync(
        "{3BC85265-09D6-4205-B665-8EB239A8B9A1}", function (result) {
        const xmlPart = result.value;
        xmlPart.addHandlerAsync(Office.EventType.NodeDeleted, function (eventArgs) {
            write("A node has been deleted.");
        });
    });
}
// Function that writes to a div with id='message' on the page.
function write(message){
    document.getElementById('message').innerText += message;
}
// To add an event handler for the NodeInserted event, use the addHandlerAsync method of the CustomXmlPart object.
function addNodeInsertedEvent() {
    Office.context.document.customXmlParts.getByIdAsync(
        "{3BC85265-09D6-4205-B665-8EB239A8B9A1}", function (result) {
        const xmlPart = result.value;
        xmlPart.addHandlerAsync(Office.EventType.NodeInserted, function (eventArgs) {
            write("A node has been inserted.");
        });
    });
}
// Function that writes to a div with id='message' on the page.
function write(message){
    document.getElementById('message').innerText += message;
}
// To add an event handler for the NodeReplaced event, use the addHandlerAsync method of the CustomXmlPart object.
function addNodeReplacedEvent() {
    Office.context.document.customXmlParts.getByIdAsync(
        "{3BC85265-09D6-4205-B665-8EB239A8B9A1}", function (result) {
        const xmlPart = result.value;
        xmlPart.addHandlerAsync(Office.EventType.NodeReplaced, function (eventArgs) {
            write("A node has been replaced.");
        });
    });
}
// Function that writes to a div with id='message' on the page.
function write(message){
    document.getElementById('message').innerText += message;
}

deleteAsync(options, callback)

删除自定义 XML 部件。

deleteAsync(options?: Office.AsyncContextOptions, callback?: (result: AsyncResult<void>) => void): void;

参数

options
Office.AsyncContextOptions

提供一个选项,用于保留任何类型的上下文数据(不变),以便在回调中使用。

callback

(result: Office.AsyncResult<void>) => void

可选。 回调返回时调用的函数,其唯一参数的类型为 Office.AsyncResult

返回

void

注解

要求集CustomXmlParts

deleteAsync(callback)

删除自定义 XML 部件。

deleteAsync(callback?: (result: AsyncResult<void>) => void): void;

参数

callback

(result: Office.AsyncResult<void>) => void

可选。 回调返回时调用的函数,其唯一参数的类型为 Office.AsyncResult

返回

void

注解

要求集CustomXmlParts

示例

function deleteXMLPart() {
    Office.context.document.customXmlParts.getByIdAsync(
        "{3BC85265-09D6-4205-B665-8EB239A8B9A1}", function (result) {
        const xmlPart = result.value;
        xmlPart.deleteAsync(function (eventArgs) {
            write("The XML Part has been deleted.");
        });
    });
}
// Function that writes to a div with id='message' on the page.
function write(message){
    document.getElementById('message').innerText += message; 
}

getNodesAsync(xPath, options, callback)

异步获取此自定义 XML 部件中与指定 XPath 匹配的任何 CustomXmlNodes。

getNodesAsync(xPath: string, options?: Office.AsyncContextOptions, callback?: (result: AsyncResult<CustomXmlNode[]>) => void): void;

参数

xPath

string

返回指定你想要的节点的 XPath 表达式。 必填。

options
Office.AsyncContextOptions

提供一个选项,用于保留任何类型的上下文数据(不变),以便在回调中使用。

callback

(result: Office.AsyncResult<Office.CustomXmlNode[]>) => void

可选。 回调返回时调用的函数,其唯一参数的类型为 Office.AsyncResultvalue结果的 属性是 CustomXmlNode 对象的数组,这些对象表示传递给 xPath 参数的 XPath 表达式指定的节点。

返回

void

注解

要求集CustomXmlParts

getNodesAsync(xPath, callback)

异步获取此自定义 XML 部件中与指定 XPath 匹配的任何 CustomXmlNodes。

getNodesAsync(xPath: string, callback?: (result: AsyncResult<CustomXmlNode[]>) => void): void;

参数

xPath

string

返回指定你想要的节点的 XPath 表达式。 必填。

callback

(result: Office.AsyncResult<Office.CustomXmlNode[]>) => void

可选。 回调返回时调用的函数,其唯一参数的类型为 Office.AsyncResultvalue结果的 属性是 CustomXmlNode 对象的数组,这些对象表示传递给 xPath 参数的 XPath 表达式指定的节点。

返回

void

注解

要求集CustomXmlParts

示例

function showXmlNodeType() {
    Office.context.document.customXmlParts.getByIdAsync(
        "{3BC85265-09D6-4205-B665-8EB239A8B9A1}", function (result) {
        const xmlPart = result.value;
        xmlPart.getNodesAsync('*/*', function (nodeResults) {
            for (let i = 0; i < nodeResults.value.length; i++) {
                const node = nodeResults.value[i];
                write(node.nodeType);
            }
        });
    });
}
// Function that writes to a div with id='message' on the page.
function write(message){
    document.getElementById('message').innerText += message; 
}

getXmlAsync(options, callback)

异步获取此自定义 XML 部件内的 XML。

getXmlAsync(options?: Office.AsyncContextOptions, callback?: (result: AsyncResult<string>) => void): void;

参数

options
Office.AsyncContextOptions

提供一个选项,用于保留任何类型的上下文数据(不变),以便在回调中使用。

callback

(result: Office.AsyncResult<string>) => void

可选。 回调返回时调用的函数,其唯一参数的类型为 Office.AsyncResultvalue结果的 属性是一个字符串,其中包含引用的 CustomXmlPart 对象的 XML。

返回

void

注解

要求集CustomXmlParts

getXmlAsync(callback)

异步获取此自定义 XML 部件内的 XML。

getXmlAsync(callback?: (result: AsyncResult<string>) => void): void;

参数

callback

(result: Office.AsyncResult<string>) => void

可选。 回调返回时调用的函数,其唯一参数的类型为 Office.AsyncResultvalue结果的 属性是一个字符串,其中包含引用的 CustomXmlPart 对象的 XML。

返回

void

注解

要求集CustomXmlParts

示例

function showXMLPartInnerXML() {
    Office.context.document.customXmlParts.getByIdAsync(
        "{3BC85265-09D6-4205-B665-8EB239A8B9A1}", function (result) {
        const xmlPart = result.value;
        xmlPart.getXmlAsync(function (eventArgs) {
            write(eventArgs.value);
        });
    });
}
// Function that writes to a div with id='message' on the page.
function write(message){
    document.getElementById('message').innerText += message; 
}

removeHandlerAsync(eventType, handler, options, callback)

删除指定事件类型的事件处理程序。

removeHandlerAsync(eventType: Office.EventType, handler?: (result: any) => void, options?: RemoveHandlerOptions, callback?: (result: AsyncResult<void>) => void): void;

参数

eventType
Office.EventType

指定要移除事件的类型。 对于 CustomXmlPart 对象,eventType 参数可以指定为 Office.EventType.NodeDeletedOffice.EventType.NodeInsertedOffice.EventType.NodeReplaced

handler

(result: any) => void

要删除的处理程序的名称。

options
Office.RemoveHandlerOptions

提供用于确定删除哪些事件处理程序的选项。

callback

(result: Office.AsyncResult<void>) => void

可选。 回调返回时调用的函数,其唯一参数的类型为 Office.AsyncResult

返回

void

注解

要求集CustomXmlParts

removeHandlerAsync(eventType, handler, callback)

删除指定事件类型的事件处理程序。

removeHandlerAsync(eventType: Office.EventType, handler?: (result: any) => void, callback?: (result: AsyncResult<void>) => void): void;

参数

eventType
Office.EventType

指定要移除事件的类型。 对于 CustomXmlPart 对象,eventType 参数可以指定为 Office.EventType.NodeDeletedOffice.EventType.NodeInsertedOffice.EventType.NodeReplaced

handler

(result: any) => void

要删除的处理程序的名称。

callback

(result: Office.AsyncResult<void>) => void

可选。 回调返回时调用的函数,其唯一参数的类型为 Office.AsyncResult

返回

void

注解

要求集CustomXmlParts

示例

function removeNodeInsertedEventHandler() {
    Office.context.document.customXmlParts.getByIdAsync(
        "{3BC85265-09D6-4205-B665-8EB239A8B9A1}",
        function (result) {
            const xmlPart = result.value;
            xmlPart.removeHandlerAsync(Office.EventType.DataNodeInserted, {handler:myHandler});
    });
}