Как настроить значение по умолчанию для управления пользовательским интерфейсом в WiX? - PullRequest
4 голосов
/ 20 мая 2011

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

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Fragment>
    <Property Id="PORT" Value="8731" />
    <UI>
      <Dialog Id="MyDialog" Width="370" Height="270" Title="Service protocol configuration">
        <!-- ... -->
        <Control Type="Edit" Id="PortEdit" Width="52" Height="15" X="79" Y="68" Text="8731" Property="PORT" Integer="yes" />
      </Dialog>
    </UI>
  </Fragment>
</Wix>

Ответы [ 2 ]

1 голос
/ 21 апреля 2017

Мне показалось, что это работает (Indirect="yes" не работает). Когда этот диалог отображался, элемент управления имел Показывать это значение в поле в качестве его значения.

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Fragment>
    <Property Id="MYPROPERTY" Value="Show this value in the box" />

    <UI>
      <Dialog Id="MyIdDlg" Width="370" Height="270" Title="My Title">
        <!-- omitted --> 
        <Control Id="MyId" Type="Edit" X="20" Y="100" Width="320" Height="18" Property="MYPROPERTY" />
      </Dialog>
    </UI>
    </Fragment>
</Wix>
1 голос
/ 20 мая 2011

вы можете добавить Indirect="yes" к своему определению элемента управления, после того, как этот элемент управления отобразит значение вашего свойства, и все изменения в элементе управления изменят ваше свойство непосредственно.

, например,

  <Dialog Id="InstallDirDlgMine" Width="370" Height="270" Title="!(loc.InstallDirDlgMine_Header)">
...
    <Control Id="Folder" Type="PathEdit" X="135" Y="72" Width="230" Height="20" Property="WIXUI_INSTALLDIR" Indirect="yes" />
...
  </Dialog>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...