如何在 menuitem 从代码打开表单时保持 "Show in content area"?

How to keep "Show in content area" when form is open by menuitem from code?

在我们的应用程序的几个地方,我们在内容区域中打开 ListPage。在地址行上有类似 "Company/Module/Folder" 的内容。在该列表页上是调用 class 的菜单项,它创建菜单项并打开新的 ListPage 表单,如:

Args args = new Args();
str param = 'Something';
MenuFunction openProjects = new MenuFunction('ListPageName',MenuItemType::Display);

args.parm(param);
openProjects.run(args);

当它这样调用时,地址退化为 "Company/"

通常该路径的显示取决于菜单上的 属性 "IsDisplayedInContentArea=Yes" 但我不知道如何在代码中设置它。

如何保持位置(至少在使用不同参数重新打开同一个 ListPage 时)?

我正在使用 Microsoft Dynamics AX 2012R2。

当使用了任何菜单中没有的菜单项时,就会出现这种情况。所以解决方案是使用菜单中某处的菜单项。

当使用调用者 args 而不是创建新的 Args() 时,我也看到了这种行为:

public static void main (Args _args) {
MenuFunction openProjects = new MenuFunction('ListPageName',MenuItemType::Display);
_args.param('Something');
openProjects.run(_args);
}