Wix 将发布事件与控件分开
我有一个UI对话框,它在几个WiX项目中很常见 但根据项目的不同,该常用UI之前(后面)或之后(后面)的对话框可能不同。Wix 将发布事件与控件分开,wix,wix3.5,Wix,Wix3.5,我有一个UI对话框,它在几个WiX项目中很常见 但根据项目的不同,该常用UI之前(后面)或之后(后面)的对话框可能不同。 为了避免代码重复,我希望在每个WiX项目中单独定义公共对话框(没有发布事件)和该UI的发布事件 是否可能以及如何做到这一点?,您可以在src\ext\uiextension\wixlib下查看wix源代码。您会注意到,所有对话框都在它们自己的文件中,UI集是分开的 例如,在WixUI_Mondo.wxs中,您有DialogRef标记来导入对话框,还有一堆Publish标记来重
为了避免代码重复,我希望在每个WiX项目中单独定义公共对话框(没有发布事件)和该UI的发布事件 是否可能以及如何做到这一点?,您可以在
src\ext\uiextension\wixlib
下查看wix源代码。您会注意到,所有对话框都在它们自己的文件中,UI集是分开的
例如,在WixUI_Mondo.wxs中,您有DialogRef
标记来导入对话框,还有一堆Publish
标记来重新排序序列。例如,InstallDirDlg
中有控件,在noPublish
标记旁边
您的UI看起来像:
<UI Id="MyUI">
<DialogRef="WelcomeDlg"/>
<DialogRef="InstallDirDlg"/>
<Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" Value="InstallDirDlg">CONDITION</Publish>
<Publish Dialog="InstallDirDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg">1</Publish>
</UI>
条件
1.
在对话框的文件中:
<UI>
<Dialog Id="WelcomeDlg" Width="370" Height="270" Title="Welcome">
<Control ... />
</Dialog>
</UI>
您也可以在项目中使用。因此,如果您的对话框总是调用一个自定义操作,或者显示在另一个操作之前,那么您最好将其放在该文件中
您可以下载源代码