Windows installer MSI对话框没有';不要正确地重新油漆

Windows installer MSI对话框没有';不要正确地重新油漆,windows-installer,dialog,Windows Installer,Dialog,我有一个MSI对话框用于验证安装密钥。该对话框包含: 文本字段(供用户输入密钥) 标签(显示错误信息,如密钥无效或过期) 按钮(“下一步”按钮) 当用户单击“下一步”按钮时,密钥将被验证,如果密钥无效或过期,标签将更新为描述错误的文本。问题是,如果标签用多个不同的文本值更新(例如,用户输入一个无效的键,后跟一个过期的键),则标签无法正确地重新绘制自身;看起来新文本是在旧文本之上打印的。是否有办法强制对话框(或仅标签)正确地重新绘制自身?不知道,但我们会弹出一个单独的错误对话框,显示问题,而不

我有一个MSI对话框用于验证安装密钥。该对话框包含:

  • 文本字段(供用户输入密钥)
  • 标签(显示错误信息,如密钥无效或过期)
  • 按钮(“下一步”按钮)

当用户单击“下一步”按钮时,密钥将被验证,如果密钥无效或过期,标签将更新为描述错误的文本。问题是,如果标签用多个不同的文本值更新(例如,用户输入一个无效的键,后跟一个过期的键),则标签无法正确地重新绘制自身;看起来新文本是在旧文本之上打印的。是否有办法强制对话框(或仅标签)正确地重新绘制自身?

不知道,但我们会弹出一个单独的错误对话框,显示问题,而不是更新现有标签。即时对话框更新造成了太多的麻烦,现在我想起来肯定是重新绘制了问题。

我可以通过隐藏控件并重新显示来解决这个问题。我添加了一些条件,以便在文本为空时隐藏控件,在文本不为空时显示控件。在验证密钥之前,我将文本设置为空,然后,如果密钥未验证,我将文本设置为适当的文本