【C#重构】——限制字符输入

太过爱你忘了你带给我的痛 2022-04-11 07:28 439阅读 0赞

" class="reference-link">针对ASCII:设置密码,只能输入数字或者Backspacewatermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3htbDE5OTY_size_16_color_FFFFFF_t_70

只显示输入0~9数字和回退:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3htbDE5OTY_size_16_color_FFFFFF_t_70 1

限制只能输入汉字:

using System.Text.RegularExpressions;//汉字限制输入的引用

  1. Regex rg = new Regex("^[\u4e00-\u9fa5]$");
  2. if (!rg.IsMatch (e.KeyChar .ToString ())&& e.KeyChar !='\b')
  3. {
  4. e.Handled = true;
  5. }

KeyPress事件:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3htbDE5OTY_size_16_color_FFFFFF_t_70 2

  1. 理解一下keypress he keydown
  2. 虽然从字面理解, KeyDown是按下一个键的意思, 但实际上二者的根本区别是, 系统由KeyDown返回键盘的代码, 然后由TranslateMessage函数翻译成成字符
  3. KeyPress返回字符值. 因此在KeyDown中返回的是键盘的代码, KeyPress返回的是ASCII字符. 所以根据你的目的, 如果只想读取字符, KeyPress, 如果想读各键的状态, KeyDown.

发表评论

表情:
评论列表 (有 0 条评论,439人围观)

还没有评论,来说两句吧...

相关阅读