我正在使用自定义窗格创建一个单词addin。
我还创建了一个带有复选框控件的功能区,该控件根据选中的更改事件显示/隐藏自定义窗格。
如果我只有一个单词实例,则一切正常。
当我创建word文档的另一个实例时,单击文档2中的复选框会触发文档1的事件并隐藏窗格。
如何为每个单词实例单独同步功能区和自定义窗格?
感谢。
答案 0 :(得分:1)
使用Word时,重要的是要注意新文档窗口通常不等同于Word应用程序的新实例。 Word是伪SDI,这意味着它为每个文档打开一个单独的窗口,而不是共享同一应用程序窗口的多个文档。但是只有一个应用程序实例。
您所描述的是任何伪SDI应用程序的问题:功能区和自定义任务窗格显示并保持创建它们的窗口的状态。为了让他们跟踪"跟踪"在单个窗口中,您需要用于跟踪当前具有焦点的文档窗口并相应更改状态的代码。例如,请参阅此处的讨论: http://msdn.developer-works.com/article/11561210/SDI+app+challenge+(custom+task+panes)
和#34;在多个应用程序窗口中管理自定义任务窗格"在本文中:https://msdn.microsoft.com/en-us/library/aa942864.aspx#WordAndInfoPath
它们都描述了如何使用事件来跟踪每个文档/窗口的控件状态。