我正试图编写一个visio应用程序,如果我在Macro中编写(在visio应用程序中),我得到所有的对象。如果我写在Macro(在visio应用程序内),我得到所有对象。然而,当我试图在Visual Studio 2019中写相同的代码时,我无法找到引用。像ActiveWindow或visSectionAction。我试图按照这个。将菜单动作程序化地添加到visio
我缺少什么参考资料。我添加了nuget包,添加了office对象库.TIA。
要从.NET应用程序中使用Visio对象模型,您需要向该应用程序添加Visio类型库的引用。这是 Microsoft.Office.Interop.Visio
. 你可以在微软的文档中重新开始。https:/docs.microsoft.comen-usvisualstudiovstovisio-object-model-overview。
全局VBA对象,如 ActiveWindow
,可作为 app.ActiveWindow
假设 "应用程序 "是您访问的 Visio 应用程序对象的根)。在插件的情况下。
var w = Globals.ThisAddIn.Application.ActiveWindow
或如果您需要从插件的方法访问。
var w = Application.ActiveWindow
枚举应以其类型为前缀。VisSectionIndices.visSectionAction
.
请注意,链接问题中的答案解释了如何将菜单项添加至 形状而不是应用程序。如果你想扩展应用程序菜单而不是形状菜单(?),你需要将你的菜单项添加到ribbon定义中。