Компания MSI отсортированный выбора комбобокса
Я использую набор инструментов Windows Installer XML (WiX) версии 3.10.2. Когда я создаю ComboBox с элементами, имеющими похожий текст, выбор через пользовательский интерфейс работает не так, как ожидалось. В качестве примера я создал следующий список:
Значение / Текст
1 / текст 10000
2 / текст 5000
3 / текст 2000
4 / текст 1000
5 / текст 500
6 / текст 100
Выбор значений 1, 2 и 3 работает, как и ожидалось. При выборе значений 4 и 6 отображается текст значения 1. При выборе значения 5 отображается текст значения 2.
Я заметил, что установка Sorted="no" не имеет такого странного поведения. Однако это не вариант для моего проекта.
Что я упускаю?
Кто-то подал выпуск №4069 с командой WiX. Он был закрыт как не связанный с WiX; это поведение контролируется MSI и / или Windows. Однако никаких дальнейших рекомендаций по урегулированию не последовало.
Что я уже пробовал:
<?xml version="1.0" encoding="UTF-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Product Id="*" Name="WiX_ComboBox" Language="1033" Version="1.0.0.0" Manufacturer="Example Company" UpgradeCode="c45d2b80-fc84-48a2-a29c-46e781d26461"> <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" /> <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." /> <MediaTemplate /> <UIRef Id="WixUI_Common"/> <UIRef Id="CustomUi"/> <UIRef Id="WixUI_ErrorProgressText"/> <Property Id="BADCMBVAL1" Value="1" /> </Product> <Fragment> <UI> <Dialog Id="BadComboBoxDlg" Width="370" Height="270" Title="Bad Combo Box" NoMinimize="yes"> <Control Id="BadComboBox1" Type="ComboBox" X="100" Y="186" Width="100" Height="16" ComboList="yes" Sorted="yes" Property="BADCMBVAL1"> <ComboBox Property="BADCMBVAL1"> <ListItem Value="1" Text="TEXT 10000"/> <ListItem Value="2" Text="TEXT 5000"/> <ListItem Value="3" Text="TEXT 2000"/> <ListItem Value="4" Text="TEXT 1000"/> <ListItem Value="5" Text="TEXT 500"/> <ListItem Value="6" Text="TEXT 100"/> </ComboBox> </Control> <Control Id="Back" Type="PushButton" X="180" Y="243" Width="56" Height="17" Text="!(loc.WixUIBack)" /> <Control Id="Next" Type="PushButton" X="236" Y="243" Width="56" Height="17" Default="yes" Text="!(loc.WixUINext)" /> <Control Id="Cancel" Type="PushButton" X="304" Y="243" Width="56" Height="17" Cancel="yes" Text="!(loc.WixUICancel)"> <Publish Event="SpawnDialog" Value="CancelDlg">1</Publish> </Control> </Dialog> </UI> </Fragment> <Fragment> <UI Id="CustomUi"> <TextStyle Id="WixUI_Font_Normal" FaceName="Tahoma" Size="8" /> <TextStyle Id="WixUI_Font_Bigger" FaceName="Tahoma" Size="12" /> <TextStyle Id="WixUI_Font_Title" FaceName="Tahoma" Size="9" Bold="yes" /> <Property Id="DefaultUIFont" Value="WixUI_Font_Normal" /> <Property Id="WixUI_Mode" Value="Mondo" /> <DialogRef Id="ErrorDlg" /> <DialogRef Id="FatalError" /> <DialogRef Id="FilesInUse" /> <DialogRef Id="MsiRMFilesInUse" /> <DialogRef Id="PrepareDlg" /> <DialogRef Id="ProgressDlg" /> <DialogRef Id="ResumeDlg" /> <DialogRef Id="UserExit" /> <Publish Dialog="ExitDialog" Control="Finish" Event="EndDialog" Value="Return" Order="999">1</Publish> <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="BadComboBoxDlg">1</Publish> <Publish Dialog="BadComboBoxDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish> <Publish Dialog="BadComboBoxDlg" Control="Next" Event="SpawnDialog" Value="CancelDlg">1</Publish> </UI> </Fragment> </Wix>