企业架构师-在C#中强调广播事件
本文关键字:广播 事件 企业 | 更新日期: 2023-09-27 18:00:14
我已经在C#中创建了EA添加,其中包含菜单,现在单击菜单项时会调用EA_MenuClick
。我想显示窗口窗体。因此,只有打开模型文件时,这才有效。如果模型文件没有打开,它会抛出一条消息,称为"对象引用未设置为对象实例"。
那么,即使没有打开模型文件,我如何显示表单呢?经过研究,我发现我们可以通过文件打开广播进行控制,所以我如何在C#中访问这种方法并修改它。
在引用中,我添加了Interop EA.dll,那么我应该添加哪些其他引用来获得EA_Fileopen函数感谢
Interop.EA包含整个EA API,不需要添加其他引用。
出现错误的原因是,您试图访问存储库的内容,而没有首先检查存储库是否打开。您需要检查EA_MenuClick()
的Repository
参数是否有效。
您还应该添加一个菜单状态处理程序(EA_GetMenuState()
),用于检查存储库是否有效,并将需要打开存储库的所有菜单项的IsEnabled
设置为false。这将禁用它们并阻止EA调用EA_MenuClick()
。