我禁止使用按键事件在文本框中键入数字。但是,当使用Ctrl + V或通过鼠标粘贴内容时,数字将被输入到文本框中。如何防止这一点?除数字外,我必须允许粘贴/键入所有文本。防止将数字粘贴到.net窗体中的文本框中
1
A
回答
3
一个非常简单的方法是使用TextChanged
事件检查文本。如果文本有效,请将其副本存储在字符串变量中。如果无效,显示一条消息,然后从变量恢复文本:
string _latestValidText = string.Empty;
private void TextBox_TextChanged(object sender, EventArgs e)
{
TextBox target = sender as TextBox;
if (ContainsNumber(target.Text))
{
// display alert and reset text
MessageBox.Show("The text may not contain any numbers.");
target.Text = _latestValidText;
}
else
{
_latestValidText = target.Text;
}
}
private static bool ContainsNumber(string input)
{
return Regex.IsMatch(input, @"\d+");
}
这将数字处理出现的任何文本,无论他们可能会出现在哪里,多少倍。
3
使用TextBox.TextChanged事件。然后使用与KeyDown事件中相同的代码。事实上,您不再需要keydown事件
+0
我已经使用KeyEventArgs的关键事件和使用e.KeyCode,我阻止了数字!但是,在使用文本更改事件时,我无法获得密钥的密钥代码! – banupriya 2010-09-21 07:11:38
-1
相关问题
- 1. 如何防止在文本框中粘贴非数值?
- 2. 如何防止在文本框上粘贴Alpha版窗口
- 3. 捕获CTRL + V或粘贴到.NET中的文本框中
- 4. 在Windows窗体文本框中是否无法粘贴中文字符
- 5. 防止复制+粘贴文本区为()
- 6. 如何防止粘贴到多列中?
- 7. 粘贴字体粘贴到剪贴板
- 8. 防止在C#/ vb.net中的蒙面编辑文本框中复制和粘贴
- 9. 量角器将数字列表粘贴到文本字段中
- 10. 如何防止在将文本粘贴到输入字段时出现空格?
- 11. 将富文本粘贴到Flash中?
- 12. flex:如何防止在flex3文本输入中粘贴(ctrl + V)?
- 13. 如何将多个字符串粘贴到.net .resx文件中?
- 14. 将内容粘贴到ANSI格式的文本框中
- 15. VB.NET - 将Web图像的URL粘贴到文本框中
- 16. 多语言文本复制/粘贴到WinForms中的文本框?
- 17. 正确地从文本框中将数据粘贴到Excel文件中
- 18. 将多行文本粘贴到单行编辑框控件中
- 19. 将多个文本行粘贴到多个html输入框中
- 20. 将tcpstream输入粘贴到文本框中
- 21. 如何将richtext粘贴到文本框中?
- 22. AppleScript将文本从剪贴板粘贴到文件中
- 23. 在多个文本框中粘贴serialnumber
- 24. 使用gtk剪贴板将文本粘贴到GNOME中的xterm
- 25. 文本框粘贴问题
- 26. 文本粘贴中的R
- 27. 制作链接粘贴到文本框
- 28. 防止复制/粘贴将网页样式复制到富文本编辑器
- 29. 如何防止粘贴到输入的脚本注入
- 30. 防止将HTML数据发布到表单文本框中
粘贴''one 2 three''到文本框中的预期结果是什么? – 2010-09-21 06:54:25
在这种情况下,系统应该显示“输入的文本无效”提示消息。 – banupriya 2010-09-21 07:02:48