Ribbon按钮ExecuteAction如何将消息发布到TaskPane

时间:2017-06-27 21:05:43

标签: office-js

我们正在开发一个TaskPane Addin。我们正在添加Addin命令。

  1. 我们希望实现功能区按钮可以在TaskPane中触发某些UI的功能。 (比如启动向导)但是我们没有看到从不可见的浏览器上下文发布消息的方法ExecuteAction正在运行到TaskPane窗口。

  2. ExecuteFunction会检查是否打开了TaskPane?

  3. 出于性能考虑,我想知道ExecuteFunction如何加载不可见的HTML页面。 HTML页面是否在Excel的打开会话中加载了一次?每次执行ExecuteFunction时都加载?

  4. 由于

2 个答案:

答案 0 :(得分:1)

以下是您可以尝试从ExecuteFunction到任务窗格进行通信的一些方法:

  • LocalStorage事件(虽然它可能不适用于所有浏览器/平台)
  • Cookies(无任何事件,但您可以轮询更改)
  • Office.context.document.Settings
  • 来自/来自Web服务器(较慢的性能,但这种方法可以保证在所有情况下都有效)。

答案 1 :(得分:0)

要从命令显示窗格,您必须使用ShowTaskpane操作;您无法从ExecuteFunction操作触发窗格。如果您需要从ExecuteFunction显示UI,那么现在唯一可用的API是displayDialog。

每次调用ExecuteFunction时都会加载一个新的页面实例,但如果该页面是可缓存的,那么加载时间实际上非常快。