我们正在开发一个TaskPane Addin . 我们正在添加Addin命令 .
-
我们希望实现功能区按钮可以在TaskPane中触发某些UI的功能 . (比如启动向导)但是我们没有看到从不可见的浏览器上下文发布消息的方法ExecuteAction正在运行到TaskPane窗口 .
-
ExecuteFunction会检查是否打开了TaskPane?
-
出于性能问题,我想知道ExecuteFunction如何加载不可见的HTML页面 . HTML页面是否在Excel的打开会话中加载了一次?每次执行ExecuteFunction时都加载?
谢谢
2 回答
要从命令显示窗格,您必须使用ShowTaskpane操作;您无法从ExecuteFunction操作触发窗格 . 如果您需要从ExecuteFunction显示UI,那么现在唯一可用的API是displayDialog .
每次调用ExecuteFunction时都会加载一个新的页面实例,但如果该页面是可缓存的,那么加载时间实际上非常快 .
以下是您可以尝试从ExecuteFunction到任务窗格进行通信的一些方法:
LocalStorage事件(尽管它可能不适用于所有浏览器/平台)
Cookies(没有事件,但您可以轮询更改)
Office.context.document.Settings
对Web服务器的调用(较慢的性能,但保证此方法适用于所有情况)