检查单击下一个按钮是否用户在文本框中输入了值

时间:2012-07-20 12:21:52

标签: wix wix3.5

我想知道如何验证文本框中的条目?我正在使用wix工具集3.5。我的意思是我应该得到一个提示或一些消息,说你必须输入文本(我在这里有一个人的名字),没有它就不能进行安装。

1 个答案:

答案 0 :(得分:2)

您需要修改UI元素,以便有一个条件发布标记,用于确定是否填充了附加到TextBox的属性:

  <Publish Dialog="NameSettingsDlg" 
           Control="Next" 
           Property="ErrorMessage" Value="You need to fill in your name!" 
           Order="1">
      NOT NAME_PROPERTY
  </Publish>
  <Publish Dialog="NameSettingsDlg" 
           Control="Next" 
           Event="SpawnDialog" 
           Value="InvalidSettingsDlg" 
           Order="2">
      NOT NAME_PROPERTY
  </Publish>
  <Publish Dialog="NameSettingsDlg" 
           Control="Next" 
           Event="NewDialog" 
           Value="VerifyReadyDlg">
  </Publish>

其中“InvalidSettingsDlg”定义为:

<Fragment>
    <UI>
        <Dialog Id="InvalidSettingsDlg" 
                Width="260" 
                Height="85" 
                Title="!(loc.InvalidSettingsDlg_Title)">
            <Control Id="OK" Type="PushButton" X="102" Y="57" Width="56" 
                     Height="17" Default="yes" Cancel="yes" Text="!(loc.WixUIOK)">
                <Publish Event="EndDialog" Value="Return">1</Publish>
            </Control>
            <Control Id="Text" Type="Text" X="48" Y="22" Width="194" Height="30" 
                     Text="[ErrorMessage]" />
            <Control Id="Icon" Type="Icon" X="15" Y="15" Width="24" Height="24" 
                     ToolTip="!(loc.InvalidSettingsDlgIconTooltip)" FixedSize="yes"
                     IconSize="32" Text="WixUI_Ico_Exclam" />
         </Dialog>
    </UI>
</Fragment>