如何根据wix工具集安装程序中的复选框启用或禁用单选按钮[关闭]

问题描述 投票:-2回答:1

我已经创建了wix安装程序,我已添加了复选框和相应的单选按钮。如果未选中复选框,则应禁用相应的单选按钮。用户可以选择仅在选中复选框时进行安装。附图供参考。

Dialog with radio button and Checkbox

windows wix installer
1个回答
1
投票

根据Bob Arnson on the wix-users forums,显然没有办法禁用按钮组中的一个单选按钮:

MSI不支持这一点。在MSI术语中,单选按钮组是控件,单选按钮是非控制子项。这很麻烦而且不直观,但这就是MSI目前的工作方式。

但是,即使您无法在按钮组中启用或禁用(隐藏或显示)单个按钮,也可以对整个按钮组执行此操作。例如:

<Control Id="InstallationTypeRadioButton" Type="RadioButtonGroup" Property="INSTALLTYPE" X="135" Y="150" Width="220" Height="38">
  <RadioButtonGroup Property="INSTALLTYPE">
    <RadioButton Value="FULL" Text="Sandalone" X="0" Y="0" Width="220" Height="20" />
    <RadioButton Value="DISTRIBUTED" Text="Distributed" X="0" Y="20" Width="220" Height="20" />
  </RadioButtonGroup>
</Control>

<Control Id="InstallationDistributedTypeRadioButton" Type="RadioButtonGroup" Property="DISTRIBUTEDTYPE" X="135" Y="188" Width="220" Height="40">
  <RadioButtonGroup Property="DISTRIBUTEDTYPE">
    <RadioButton Value="MASTER" Text="Master" X="15" Y="0" Width="220" Height="20" />
    <RadioButton Value="SLAVE" Text="Slave" X="15" Y="20" Width="220" Height="20" />
  </RadioButtonGroup>
  <Condition Action="show"> <![CDATA[INSTALLTYPE="DISTRIBUTED"]]> </Condition>
  <Condition Action="hide"> <![CDATA[INSTALLTYPE<>"DISTRIBUTED"]]> </Condition>
</Control>

这段代码允许您根据另一个按钮组的选择显示或隐藏单选按钮组。

结果如下所示:

© www.soinside.com 2019 - 2024. All rights reserved.