我使用向导向导在 AX 2012 中创建了一个向导......现在我需要放置 1 个功能,即根据用户输入启用或禁用完成按钮。

我已经尝试过这 3 种方法,但没有成功。

this.finishenabled() -- 关于向导类的 SetupNavigation 方法

finishenabled[formrun.tabidx()] = false -- 关于向导类的SetupNavigation方法

syswizard.finishenable(false, curtabidx(),false) - 在向导表单的标签页上

如果有人对此有解决方案,请回复......

最佳答案

Wizard 类有一个验证方法,您将在其中执行以下操作:

boolean validate()
{
    if(SomeTestCondition)
    {
        return true;
    }
    return false;
}

据微软称,此方法执行以下操作:



此外,您可以在要验证的字段上使用 textchanged() 方法(或者如果不是文本,您可以使用对象的 changed 方法)。
if (this.text())
{
    if   (!sysWizard.isNextEnabled())
    {
        sysWizard.nextEnabled(true,   sysWizard.curTab(), false);
    }
}
else
{
    if   (sysWizard.isNextEnabled())
        sysWizard.nextEnabled(false,   sysWizard.curTab(), false);
}

也来自 MSDN Enable Buttons

关于axapta - 根据用户输入启用/禁用向导的 FINISH 按钮,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16557569/

10-12 16:44