2013-06-19 5 views
5

、私はWIXのラジオボタングループ

  1. 私は画像で述べたようにWIXラジオグループボタンの選択に基づいてテキストボックスを無効にすることができるかどうかを知りたいです以下。

  2. ラジオボタンの値の選択を保存するにはどうすればよいですか?選択したラジオボックスの値が必要でレジストリに保存する必要があります。

レジストリは、この条件に基づいて最初のテキストボックス値を割り当てることは可能ですか?

<Condition><![CDATA[if (RADIOGROUP=1)<Property Id="RADIOGROUP" Value="[TEXTBOX1]" />]]></Condition> 
    <RegistryKey Root="HKLM" Key="SOFTWARE\Company\Service" > 
    <RegistryValue Name="RADIOGROUP" Value="[RADIOGROUP]" Type="string" > 
        </RegistryKey> 

誰でも助けてくれますか?

WIX Radio group button

答えて

10

次のようにあなたのラジオボタンを持っていると仮定すると:

<RadioButtonGroup Property="SOME_PROPERTY"> 
    <RadioButton Value="0" Text="disable/hide labels" /> 
    <RadioButton Value="1" Text="enable/show labels" /> 
</RadioButtonGroup> 

あなたはConditionサブ要素を使用して、ダイアログ内の他の要素の可視性やavailablilityを制御することができます。

<Control Id="SomeLabel" Type="Text" Text="text:"> 
    <Condition Action="disable"><![CDATA[SOME_PROPERTY <> "1"]]></Condition> 
    <Condition Action="enable"><![CDATA[SOME_PROPERTY = "1"]]></Condition> 
</Control> 

<Control Id="SomeLabel2" Type="Text" Text="text2:"> 
    <Condition Action="hide">SOME_PROPERTY = "0"></Condition> 
    <Condition Action="show">SOME_PROPERTY = "1"></Condition> 
</Control> 

コメントのリクエストに続いて、Edit要素の値でプロパティを更新する例を投稿します(いくつかは必要です)。

<CustomAction Id="CA_SET_TO_A" Property="P" Value="[AA]" /> 
<CustomAction Id="CA_SET_TO_B" Property="P" Value="[BB]" /> 

<Dialog Id="MyDialog" Title="[ProductName] Setup"> 
    <Control Id="Next" Type="PushButton" Default="yes" Text="!(loc.WixUINext)"> 
     <Publish Event="DoAction" Value="CA_SET_TO_A">R="USE_A"</Publish> 
     <Publish Event="DoAction" Value="CA_SET_TO_B">R="USE_B"</Publish> 
    </Control> 

    <Control Id="MyRadioButton" Type="RadioButtonGroup" Property="R"> 
     <RadioButtonGroup Property="R"> 
      <RadioButton Value="USE_A" Text="Save text field 1" /> 
      <RadioButton Value="USE_B" Text="Save text field 2" /> 
     </RadioButtonGroup> 
    </Control> 

    <Control Id="A" Type="Edit" Property="AA" Text="{64}"> 
     <Condition Action="disable">R="USE_B"</Condition> 
     <Condition Action="enable">R="USE_A"</Condition> 
    </Control> 
    <Control Id="B" Type="Edit" Property="BB" Text="{64}"> 
     <Condition Action="disable">R="USE_A"</Condition> 
     <Condition Action="enable">R="USE_B"</Condition> 
    </Control> 
</Dialog> 
+0

:制御属性は)明確にするためommitedされている私はの選択に基づいてのみ、テキストボックスの値を取得することができたRadioButton 1st.howはその可能であると言うanswer.Canいただきありがとうございます、私は対応を保存したいと?ラジオボタンの選択に基づいてテキストボックス(ラジオボタンテキストではない)の値。どのように手伝いますか? – reapen

+0

CusomActionタイプ51(プロパティセット)を作成 – BBR

+0

申し訳ありませんが、最後のコメント編集がタイムアウトしました。 ラジオボタンRの選択値に基づいて、プロパティPにテキストコントロールAまたはテキストコントロールBのいずれかの値を設定するとします。コントロールAをプロパティAAで、コントロールBをプロパティBBで接続します。 R = "0"の場合PをAAに、R = "1"の場合PをBBに設定する2つのCusomアクションタイプ51(プロパティセット)を作成します。 Publish Event = "DoAction"サブ要素を使用して、「次へ」ボタンでこれら2つのカスタムアクションを呼び出します。 完全なソリューションが必要な場合は教えてください。 – BBR

関連する問題