.net - 为 .NET 的 MaskedTextBox 隐藏 PromptChar

标签 .net winforms user-interface maskedtextbox

有没有办法在不显示 PromptChar 的情况下使用 MaskedTextBox?我想指定一个掩码来验证输入,但我不希望任何提示字符在编辑模式下占用空间。

这样做的原因是当我想接受具有有限字符集的自由文本时,所有字符都是可选的字母数字。我遇到的问题是,当我选择所有文本时,甚至选择了提示字符。

将 PromptChar 设置为 ("") 不起作用。将其设置为零宽度空间 (\u200B) 似乎可行,但是当掩码达到一定长度(13 个字符似乎是魔数(Magic Number))时会发生奇怪的事情。或者最好只推出我自己的?

最佳答案

这是一个老问题,但希望这会帮助其他人在同一问题上绊倒。
对我而言,.net 2.0 及更高版本有属性“HidePrompt”,将其设置为 true 会隐藏提示文本,直到您单击该字段。因此,首先将提示字符设置为空格“”,然后将“InsertKeyMode”更改为“Insert”,然后将“HidePrompt”设置为 True。将提示字符更改为空格可以防止用户点击提示时看到提示,hideprompt 一般隐藏它,插入模式将用户带到字段的开头,而不是允许他们在提示中间点击字符字段。

关于.net - 为 .NET 的 MaskedTextBox 隐藏 PromptChar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1459797/

相关文章:

winforms - MonoDevelop中的WinForms应用程序

iphone - 自定义 iPhone 用户界面组件

python - 如何使用 Python 在没有窗口的情况下在屏幕上显示文本

JavaFX ComboBox 显示项目字体大小

c# - 将方法作为参数传递给另一个方法

c# - 保存到 Excel 文件会导致 C# Windows 中出现错误

c# - 调试调用 .Net(C#) dll 的 VB6 项目

c# - WmpLib player.pause 不工作

c# - Google 应用程序引擎 ASP.net

winforms - TabControl TabIndexChanged 不会触发