我们可以在Menifest文件中编写action元素来打开任务窗格:
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="readTaskPaneUrl" />
</Action>
我们可以使用以下代码轻松显示对话框:
Office.context.ui.displayDialogAsync(startAddress, options, callback);
我需要打开一个任务窗格programmaitaclly。场景是,使用我的加载项用户可以下载文件,下载文件将在新的文档程序中打开。我需要自动在新打开的文档上打开任务窗格。
如何使用OfficeJS API执行此操作?欢迎提出任何建议或提示。
更新
根据@Rick Kirkham的回答,我试图按照Automatically open a task pane with a document.
打开任务窗格程序。在我的Menifest文件中:
<Action xsi:type="ShowTaskpane">
<TaskpaneId>Office.AutoShowTaskpaneWithDocument</TaskpaneId>
<SourceLocation resid="MyURL.Url" />
</Action>
在客户端:
Word.run(function (context) {
var doc = context.application.createDocument(base64String);
var _settings = doc.settings;
_settings.add("Office.AutoShowTaskpaneWithDocument", true);
return context.sync()
.then(function () {
doc.open();
}).catch(function (myError) {
//otherwise we handle the exception here!
});
}).catch(errorHandler);
但任务窗格仍无法自动打开。我错过了什么吗?或者我应该尝试其他方式?提前致谢。
注意:我使用的是OfficeJS 1.4测试版。
答案 0 :(得分:0)
有一种方法可以在文档打开时自动打开任务窗格。看看这是否符合您的需求:Automatically open a task pane with a document。
修改强>: 关于更新的问题:请保存文档,将其从docx更改为zip,然后打开zip文件。搜索zip包中的文件以查看该设置是否实际存在并设置为true。
另外,我注意到您正在使用Word.settings.add()的Word Rich API版本,其中文章使用共享API版本(并使用saveAsnyc()跟随它。我不认为这应该很重要,但作为一个解决问题的步骤,您可能想尝试API的共享版本。
此外,即使任务窗格未自动打开,打开加载项的按钮是否至少出现在文档中?