2010-08-27 14 views
5

que tiene una ventana con 3 botones de radio como este (eliminado todos los apoyos no interesantes):Establecer valor de la propiedad de la selección del usuario en Wix

<Control Id="Back" Type="PushButton" Text="!(loc.WixUIBack)"> 
    <Publish Event="NewDialog" Value="InstallDirDlg">1</Publish> 
</Control> 
<Control Id="Cancel" Type="PushButton" Text="!(loc.WixUICancel)"> 
    <Publish Event="SpawnDialog" Value="CancelDlg">1</Publish> 
</Control> 
<Control Id="Next" Type="PushButton" Text="!(loc.WixUINext)"> 
    <Publish Event="NewDialog" Value="VerifyReadyDlg">1</Publish> 
</Control> 
<Control Id="InstallTypeSelection" Type="RadioButtonGroup" Property="INSTALL_TYPE"> 
    <RadioButtonGroup Property="INSTALL_TYPE"> 
     <RadioButton Value="0" Text="InstallType A" /> 
     <RadioButton Value="1" Text="InstallType B" /> 
     <RadioButton Value="2"Text="InstallType C" /> 
    </RadioButtonGroup> 

en "NEXT" Quiero Sett algunos propertys en base a lo que el InstallType el usuario seleccionó

como esto ..

if(INSTALL_TYPE == 0) 
{ 
    REG_VALUE_AUTO_LOGIN = 0; 
    REG_VALUE_TIMEOUT = 300; 
} 
if(INSTALL_TYPE == 1) 
{ 
    REG_VALUE_AUTO_LOGIN = 1; 
    REG_VALUE_TIMEOUT = 600; 
} 

¿Cómo funciona esto en Wix?

Respuesta

7

Me encontré con algo así hace una semana. No recuerdo correctamente la sintaxis, pero parece algo así. Para mi gusto, no es muy limpio, pero debería hacer el trabajo.

<Control Id="Next" Type="PushButton" Text="!(loc.WixUINext)"> 
    <Publish Event="NewDialog" Value="VerifyReadyDlg">1</Publish> 
    <!-- INSTALL_TYPE == 0 --> 
    <Publish Property="REG_VALUE_AUTO_LOGIN" Value="1">INSTALL_TYPE = "0"</Publish> 
    <Publish Property="REG_VALUE_TIMEOUT" Value="300">INSTALL_TYPE = "0"</Publish> 

    <!-- INSTALL_TYPE == 1 --> 
    <Publish Property="REG_VALUE_AUTO_LOGIN" Value="1">INSTALL_TYPE = "1"</Publish> 
    <Publish Property="REG_VALUE_TIMEOUT" Value="600">INSTALL_TYPE = "1"</Publish> 

    <! -- FINALLY, CALL NEXT DIALOG : added by Chris Painter --> 
    <Publish Event="NewDialog" Value="VerifyReadyDlg">1</Publish> 

</Control> 

no tenía el tiempo para probarlo, pero creo que es el camino a seguir por los más pequeños. Espero que te ayude.

Saludos.

+0

Gracias, trabaja como un encanto – Qwark

Cuestiones relacionadas