Как мне потребовать значение в текстовом поле в пользовательском диалоге Wix? - PullRequest
8 голосов
/ 04 апреля 2011

У меня есть диалоговое окно Wix с элементом управления типа edit (который является URI сервера, от которого зависит служба).

Как отключить кнопку «Далее», пока значение не будет введено?

Ответы [ 2 ]

10 голосов
/ 04 апреля 2011

Вот выдержка из некоторого (старого) производственного кода, который мы использовали:

<Dialog Id="MyDlg_Error" Width="260" Height="85" NoMinimize="yes" Title="!(loc.MyDlg_Title)">
    <Control Id="MyDlgSkipDesc" Type="Text" Width="194" X="48" Y="15" Height="30" Text="!(loc.MyDlg_ErrorMsg)" />
    <Control Id="Ok" Type="PushButton" X="97" Y="57" Width="66" Height="17" Text="!(loc.WixUIOK)" />
</Dialog>

<Publish Dialog="MyDlg" Control="Next" Event="SpawnDialog" Value="MyDlg_Error"><![CDATA[Not (MY_REQUIRED_FIELD <> "")]]></Publish>

<Publish Dialog="MyDlg_Error" Control="Ok" Event="EndDialog" Value="Return">1</Publish>
3 голосов
/ 04 апреля 2011

Нет разумного способа сделать это.Вместо этого оставьте Next включенным и выполните проверку с событием элемента управления SpawnDialog, связанным с Next, которое показывает ошибку, если свойство пусто.Он также позволяет запустить пользовательское действие проверки, если вы хотите что-то более полезное, чем «не пустое».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...