原理:e.handled代表这次按键动作是否交由用户自己处理,如果为true代表由用户处理,系统不再过问,这里的应用是拦截,即通知系统我要处理这个数据,但又不处理(丢弃数据),从而实现拦截的效果。
在KeyPress 事件中填写下列代码:
e.handled= e.KeyChar<'0'|| e.KeyChar>'9' ;
e.KeyChar<'0'|| e.KeyChar>'9'也就是当按键值在0~9之间,会返回false,否则返回true,那么e.handled就接收这个返回值,如果是假 设在0~9之间,那么e.handled就会为false,那么代表不是需要处理的范围,交由系统处理,否则进行拦截,意思就是只收数字了。
if(e.KeyChar == (char)8)
{
e.handled=false;
}
退格键的ASCII码就是8,这代表当是退格时不管前面是否拦截,都取消拦截,即前面即使不是数字,这个退格键也都视为有效。
屏蔽粘贴数据:在属性中将 ShortcutsEnabled=false;