在全局菜单中获取menuitem的调用者

时间:2014-12-10 10:41:41

标签: axapta microsoft-dynamics dynamics-ax-2012 dynamics-ax-2009 ax

我通过GlobalToolsMenu中的menuItem调用一个类。 我的args的调用者总是为null,尽管从表单中调用它。

有没有办法将表单作为调用方传输?

1 个答案:

答案 0 :(得分:0)

当您从GlobalToolsMenu打开菜单项时,它与当前表单无关,它就像您尝试从独立菜单中打开菜单项一样。如果您需要从被调用类访问当前表单,则需要使用一些解决方法。

E.g。您可以尝试从类中调用WinAPI::getForegroundWindow()来检索前景窗口的句柄(用户当前正在使用的AX表单)。有了句柄,您需要找到相应的FormRun对象。为此,您可以尝试自定义\Classes\SysSetupFormRun\init以保持map表单句柄与FormRun中的infolog.globalCache()对象之间的关系。然后,您可以使用类中的缓存映射从检索到的句柄中获取FromRun对象。