我正在更新为Office 2003编写的Windows窗体应用程序。它将打开Word,使用数据库中的文本填充它,创建适合用户安全角色的按钮,以及处理按钮单击。旧的方式是使用CommandBars。以这种方式创建的Word文档存储为DB Blob,因此它们只能通过Forms应用程序获得。这是我需要的功能,但没有CommandBars。
现在,我们有了Ribbon,Action Panes,VSTO和OpenXML。我了解C#,但我对所有这些技术都很陌生。
我想象一个解决方案,我在一个漂亮的功能区上设置一个带有正确按钮的模板,按钮会引发事件。如果有人只是试图单独使用模板,那么就没有数据,事件也无济于事。但我的Windows窗体可以基于模板创建一个新文档,使用数据库中的文本填充它,隐藏不适当的按钮,以及处理按钮单击事件。容易腻。
我首先添加了一个Word 2010模板项目并为其制作了一个功能区。它在调试器中看起来不错。但是,我无法通过Console应用程序使用它创建新文档。 Word启动,但功能区不在那里。文档中有一条注释"如果Microsoft Office Word模板具有托管代码扩展,则如果模板作为全局模板附加或从Word的启动目录加载,则不会调用项目程序集。此外,该文档无法识别作为Office解决方案一部分的模板的格式。"我相信这意味着我的模板毫无用处。我无法打开Word并使用我的模板制作新文档或从另一个项目调用模板,因此毫无意义。
所有的MS帮助都让我失望,并且主要引导我。我需要一些方向。对于我描述的每个场景,最合适的现代技术是什么?对于我需要使用的每种技术,我的情况最好的资源是什么?