如何在安装遮罩中刷新向导上的向导UI

问题描述:

我正在使用installshield 2016中的基本MSI安装遮罩项目。我的向导步骤中有编辑字段和文本区域。文本区域实际上是一个错误标签。 Visible文本区域控件的属性最初设置为false如何在安装遮罩中刷新向导上的向导UI

将一些输入放入编辑字段后,用户在向导步骤按下Next >按钮。我们对用户输入执行一些验证,然后在用户输入有效时将私有属性IsUserInputValid设置为1。 IsUserInputValid属性的初始值是0值HasValidationRun标志为0

现在的行为部分我已经添加了一个事件,显示为下面的编辑文本区域控制:

HasValidationsRun = 1 AND IsUserInputValid=0 

enter image description here

当我点击Next >按钮后,错误标签不显示。但是,如果我更改通过验证的输入,那么向导将移动到下一步,并且恰好在转换发生之前,标签变为可见一秒。我不知道如果我已经正确定义了Show事件的条件,UI为什么不自己刷新。

+0

如何设置IsUserInputValid和HasValidationRun?我假设它是在自定义操作中,而不是在SetProperty控制事件中。如果是这样的话,那就是问题所在,如果没有人能够胜任我的话,我可以写出一个答案。 –

+0

是的。 “IsUserInputValid”变量存储从自定义操作返回的整数值。我点击'下一步'按钮来调用这个自定义动作。 – RBT

您需要添加一个将属性设置为新值的SetProperty控制事件。这告诉UI更新引用已更改属性的条件(或包含已更改属性的文本等)。 Windows安装程序不会监视其他方式更改属性。见我的答案相关: