重写C#的TextBox控件达到无法粘贴,无法输入特定字符功能
来源:互联网 发布:sql select 降序 编辑:程序博客网 时间:2024/06/09 11:06
QQ的登陆界面的那两个框,大家应该很熟悉了,QQ的密码框,无法复制和粘贴,其实实现起来也很简单。
这里就要用到控件重写。打开Visual Studio 新建 类库 然后继承TextBox,重写消息循环WndProc,这里捕获WM_CHAR就能实现特定的字符能不能输入,捕获WM_PASTE就能实现粘贴时候的一些操作。
public class Class1:TextBox { protected override void WndProc(ref Message m) { int charcode = (int)m.WParam; switch (m.Msg) { case 0x0102://WM_CHAR if(charcode == 97) return; break; case 0x0302://WM_PASTE IDataObject obj = Clipboard.GetDataObject(); if (obj.GetDataPresent(DataFormats.Text)) { String clip = (String)obj.GetData(DataFormats.Text); } if (obj != null) return; break; default: break; } base.WndProc(ref m); } }
至于WM_PASTE或者WM_CHAR的值应该是什么大家可以查看MSDN。
然后大家新建一个Winform工程然后引用刚刚写好的dll,把控件拖到窗体上面试一下吧。
- 重写C#的TextBox控件达到无法粘贴,无法输入特定字符功能
- C#的TextBox控件输入测试
- 2. PHP无法实现特定的功能
- C#中textbox控件实现输入字符筛选后显示
- 过滤特定字符的文本框控件开发(具有特定数据类型的TextBox控件开发)
- C# Textbox字符输入的时候自动转换成为大写
- Silverlight中TextBox禁止输入和粘贴非数值字符
- Silverlight中TextBox禁止输入和粘贴非数值字符
- js无法获取只读属性服务器端控件TextBox的值
- Ubuntu16.04无法输入特定的中文符号
- CEdit控件限制只能输入特定字符的方法
- [WPF]Show新窗口时TextBox等控件无法输入问题解决方法
- [WPF]Show新窗口时TextBox等控件无法输入问题解决方法
- vs2010复制粘贴功能无法使用
- C# 中如何实现TextBox控件只能输入数字,而不能是其他字符
- c#中TextBox输入提示功能
- c#中TextBox输入提示功能
- C#实现TextBox输入提示功能
- 在a标签的href与onclick中使用javascript的区别
- 如何系统学习 iOS 开发?
- eclipse+hadoop下生成jar包
- 数据处理常用方案
- WINCE6.0内核定制
- 重写C#的TextBox控件达到无法粘贴,无法输入特定字符功能
- C#非泛型集合类与泛型集合类的区别
- 写入注册表
- TraceViews使用
- 浅谈assert的几种用法
- Linux2.6虚拟文件系统VFS
- Android 主流分辨率
- android 提升性能总结
- 【SQL】case用法