0

我正在使用 WIX 工具集编写一个安装程序(.msi),它接受一个产品密钥,该产品密钥是 16 个字符的字母数字值,一对 4 个字符相互分隔,-例如0000-0000-0000-0000我正在使用带有以下代码的 MaskedEdit 控件。

<Control Id="Key" Type="MaskedEdit" X="75" Y="84" Width="252" Height="15" Property="ProductKey"  >
      <Text><![CDATA[<&&&&-&&&&-&&&&-&&&&>]]></Text>
    </Control>

在此处输入图像描述

如上图所示,它在屏幕上呈现。但它不会阻止用户输入特殊字符。如何将接受的字符范围限制为仅限字母数字?我在 MaskedEdit 上获得了这篇文章,但不明白如何使用它们(它们的含义alternate以及我如何使用^大写字母输入?)。

4

1 回答 1

1

看来这是不可能的。

“alternate”的含义如下:您可以编写自己的自定义操作,并在此自定义操作中处理匹配 & 与匹配 ^ 的字符不同的字符。当用户在 MaskedEdit 中填写字符时,& 和 ^ 的行为相同。但是在用户按下按钮后,自定义操作可能会将 ^ 位置的所有字符大写,而 & 位置的字符不变。

您可以编写一个自定义操作,该操作将检测输入字符串包含非字母数字字符,并且当用户按下按钮时,警告用户输入无效。

于 2017-04-18T16:46:29.417 回答