如何在WiX安装程序中设置UI控件的默认值? 当我更改控件中的值时,更改将传播到属性。但是我希望在首次显示对话框时设置一些特定的值。
<?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>
答案 0 :(得分:1)
您可以将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>
答案 1 :(得分:1)
这似乎对我有用(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>