如何在 d365 中动态更改 formcommandbuttonControl 的命令?

How to change command of formcommandbuttonControl dynamically in d365?

我在 d365 中有一个带有 formCommandButtonControl 的表单。我想根据代码中的条件动态更改与按钮关联的命令。我找不到任何基本枚举来选择值。

switch (x)
{
case 1:
    formButton.command(New);
break;
case 2:
    formButton.command(DeleteRecord);
break;
}

这是表格中的 属性

如何在 x++ 代码中选择 New 和 deleteRecord 值?

不幸的是,你的问题的答案是不要那样做并且没有枚举。

动态创建命令按钮时(FormBuildCommandButtonControl vs FormCommandButtonControl),Microsoft 的惯例是只使用常量 (#define.New(260)) 并引用它。

动态更改命令按钮的 command 闻所未闻,而且我认为在系统的任何地方都没有这样做。

命令按钮的文本很可能不会动态更新,因此您也需要对其进行更改。

您应该根据自己的目的使用常规按钮,或者创建多个命令按钮并根据需要调整它们的可见性,如评论所述。

最明显的方法是提供两个按钮,只显示相关内容。

newButton.visible(x == 1);
deleteButton.visible(x == 2);

标记控件的AutoDeclaration属性。
在适当的地方将代码放在 initactive 方法中。