Используя WiX, как отключить / включить элементы управления на основе изменения свойства? - PullRequest
7 голосов
/ 03 февраля 2010

Я немного растаял в тот момент, когда у меня есть комбинированный ящик WiX, и когда я меняю выбор, я хочу отключить / включить другие элементы управления пользовательского интерфейса.

  <ComboBox Property="SQLAUTHTYPE">
    <ListItem Value="WindowsAuth" Text="Windows Authentication" />
    <ListItem Value="SqlAuth" Text="SQL Authentication" />
  </ComboBox>

Именно тогда эти события срабатывают ...

  MSI (c) ... PROPERTY CHANGE: Modifying SQLAUTHTYPE property. Its current value is 'WindowsAuth'. Its new value: 'SqlAuth'.
  MSI (c) ... PROPERTY CHANGE: Modifying SQLAUTHTYPE property. Its current value is 'SqlAuth'. Its new value: 'WindowsAuth'.

Следующие элементы управления пользовательским интерфейсом помечаются как отключенные, когда WindowsAuth выбран, и включены, когда выбран SqlAuth ...

  <Control Type="Edit" Width="164" Height="16" X="25" Y="149" Id="SQLAccountTextbox" Property="SQLACCOUNT"
  <Control Type="Edit" Width="164" Height="16" X="190" Y="148" Id="SQLPasswordTextbox" Property="SQLPASSWORD" Password="yes" />

1 Ответ

13 голосов
/ 05 февраля 2010

Это должно сделать это:

<Control Type="Edit" Width="164" Height="16" X="190" Y="148" Id="SQLPasswordTextbox" Property="SQLPASSWORD" Password="yes">
    <Condition Action="enable">SQLAUTHTYPE = "SqlAuth"</Condition>
    <Condition Action="disable">SQLAUTHTYPE = "WindowsAuth"</Condition>
</Control>
...