WIX Bootstrapper - Добавить поле со списком
Как добавить поле со списком в загрузчик WiX?
я использую HyperlinkLargeTheme.xml
и попытался добавить поле со списком на страницу установки. Он появляется в диалоговом окне, но я не знаю, как добавить к нему значения.
<Page Name="Install">
<Text Name="InstallLanguge" X="20" Y="200" Width="100" Height="17" FontId="3" DisablePrefix="yes" HideWhenDisabled="yes">Select Language</Text>
<Combobox X="130" Y="200" Width="150" Height="17" FontId="3" Name="Language">
<ListItem Text="English" Value="eng" />
<ListItem Text="Japanese" Value="jp" />
<ListItem Text="Chinese" Value="cn" />
</Combobox>
<Button Name="InstallButton" X="-91" Y="-11" Width="75" Height="23" TabStop="yes" FontId="0">#(loc.InstallInstallButton)</Button>
</Page>
1 ответ
ComboBox не поддерживается. Для этого вам нужно специальное приложение BootstrapperApplication. Некоторые, как вы можете добавить их в диалог, но вы не сможете заполнить их.
Да, в WiX 3.11 есть код для комбо-боксов, но он неполный, и его нельзя использовать в стандартном приложении начальной загрузки. Однако на самом деле это работает, поэтому я реализовал недостающую часть для себя, почти так же, как описано в вашем посте. Смотрите соответствующий билет и форк. Официальной сборки пока нет, и, вероятно, не будет, но я могу поделиться здесь своей собственной сборкой. Он не скомпилировался без ошибок (документы CHM скомпилированы с предупреждениями), он не подписан и не прошел большинство тестов (поскольку набор тестов, похоже, не работает и некоторое время не поддерживается). Однако это работает для меня, и используется в реальном проекте. Также есть некоторые дополнительные исправления.