是否可以隐藏在WiX中选中的复选框上的文本框?
答案 0 :(得分:11)
感谢您的评论,第一条评论对我有所帮助。它是这样完成的:
<Control Id="LoginTextBox" Type="Edit" Text="CM2" Height="17" Width="200" X="150" Y="198" Property="Login">
<Condition Action="hide" >CreateDBUsers<>1</Condition>
<Condition Action="show" >CreateDBUsers=1</Condition>
</Control>
答案 1 :(得分:0)
这是一个非常老的问题,答案是:是的。
基于this blog post和Bogdan Verbenets's answer,我终于了解了它的工作原理。要详细说明已选择的答案,此基于他的答案的摘要可能有助于您了解更多信息:
<Control Id="AnyCheckBox" Type="CheckBox" Height="17" Width="10" X="150" Y="180" Property="CreateDBUsers" CheckBoxValue="1" />
<Control Id="LoginTextBox" Type="Edit" Text="CM2" Height="17" Width="200" X="150" Y="198" Property="Login">
<Condition Action="hide"><![CDATA[CreateDBUsers<>"1"]]></Condition>
<Condition Action="show">CreateDBUsers="1"</Condition>
</Control>
上面的代码 与以下代码相同 :
<Control Id="AnyCheckBox" Type="CheckBox" Height="17" Width="10" X="150" Y="180" Property="CreateDBUsers" CheckBoxValue="0" />
<Control Id="LoginTextBox" Type="Edit" Text="CM2" Height="17" Width="200" X="150" Y="198" Property="Login">
<Condition Action="hide"><![CDATA[CreateDBUsers<>"0"]]></Condition>
<Condition Action="show">CreateDBUsers="0"</Condition>
</Control>
请注意CheckBoxValue
,其值决定了您要在条件文本中写的内容。
注意:
<![CDATA[ write_something_here ]]>
(小于等于)或<
(大于等于)的条件时,最好使用>
。"1"
,"0"
)可能更合适,因为CheckBoxValue
实际上使用字符串数据类型,您可以在official documentation处进行检查。尽管这不是强制性的。复选框在WiX中肯定有很大不同。