【发布时间】:2022-10-12 21:28:32
【问题描述】:
我正在为 Enterprise Architect 开发 C# 插件,当用户选择一个菜单项时,将弹出一个 WPF GUI。
如何使这个 WPF GUI 停靠在 Enterprise Architect GUI 上(使用停靠)?我可以使加载项 GUI 可停靠吗?
【问题讨论】:
标签: c# add-in enterprise-architect
我正在为 Enterprise Architect 开发 C# 插件,当用户选择一个菜单项时,将弹出一个 WPF GUI。
如何使这个 WPF GUI 停靠在 Enterprise Architect GUI 上(使用停靠)?我可以使加载项 GUI 可停靠吗?
【问题讨论】:
标签: c# add-in enterprise-architect
是的,您可以使用Repository.AddTab() 或Repository.AddWindow(),具体取决于您希望窗口显示在主图部分中,还是作为常规停靠窗口
来自manual:
AddTab(字符串 TabName,字符串 ControlID)
activeX 自定义控件
注意:将 ActiveX 自定义控件添加为选项卡式窗口。企业 Architect 创建一个控件,如果成功,则返回其 Unknown 指针,调用者可以使用它来操作控件。
参数:
TabName: String - 用作选项卡标题 ControlID: String - 控件的 ProgID;例如,“CS_AddinFramework.UserControl1”
AddWindow(字符串 WindowName,字符串 ControlID)
注意:将 ActiveX 自定义控件作为窗口添加到加载项 停靠的窗口。 Enterprise Architect 创建一个控件,如果 成功,返回它的未知指针,它可以被 调用者来操作控件。
参数:
WindowName: String - 用作窗口标题 ControlID: String - 控件的 ProgID;例如,“CS_AddinFramework.UserControl1”
您可能需要将 WPF 窗口包装到 Winforms 控件中,以允许 EA 将其创建为 ActiveX 控件。
这是我写的一个插件示例:EA Navigator
【讨论】: