0

我有一个 Wix Control PushButton,它有几个 Publish 事件

这是xml

<Control Id="Next" Type="PushButton" X="0" Y="0" Width="50" Height="20" Default="yes" Text="!(loc.WixUINext)">
  <Publish Event="SpawnDialog" Value="ErrorDialog">
    <![CDATA[PROPERTY1 = "1" AND PROPERTY2 = "1"]]>
  </Publish>
</Control>

但是即使两个属性都等于 1,对话框也不会出现

4

1 回答 1

1

我发布后几乎立即发现了问题。所以我把它放在这里,以防其他人犯同样的错误。

在我的发布事件之后,我有另一个事件被触发以进入下一个对话框屏幕

<Publish Event="NewDialog" Value="CustomizeDlg">1</publish>

所以即使我的错误对话框应该显示,下一个事件会覆盖它,你看不到它。为了阻止这种情况发生,我必须编写逻辑以防止它继续前进。

<Publish Event="NewDialog" Value="CustomizeDlg">
<![CDATA[PROPERTY1 = "1" AND PROPERTY2 = "0"]]></Publish>

所以现在如果两个属性都已设置,它将显示错误对话框,但如果只设置了第一个属性,我将直接进入 CustomizeDlg。只要条件不同,一个会失败,另一个会通过,这很有魅力。

于 2012-05-10T16:15:31.323 回答