不懂就问-WPF中Handled是干什么用的

问题:Handled是干什么用的,如何限制控件对应事件操作?

解答:Handled是指控件路由是否会生效

举个栗子:比如我们输入框不想触发输入效果,那么我们需要将对应的Handled设置为true即可

实战示例:

限制输入框只能输入数字:

第一步:TextBox加入InputMethod.IsInputMethodEnabled="false"标记为输入框只能输入字母数字等,不能输入汉字

第二步:在TextBox加入PreviewTextInput事件,并且在事件里面进行正则表达式赛选

如图:

 

 

 <TextBox
            Height="40"
            InputMethod.IsInputMethodEnabled="false"
            PreviewTextInput="TextBox_PreviewTextInput" />

 

private void TextBox_PreviewTextInput(object sender, 
            System.Windows.Input.TextCompositionEventArgs e)
        {
            Regex re = new Regex(@"[^0-9|\-|\.]");
            e.Handled = re.IsMatch(e.Text);
        }

 

其中Regex是正则表达式的类,这时需要注意的是 我们刚刚讲到的Handled 我们需要用到IsMatch方法,代表我们输入的内容是否符合我们的正则表达式,如果符合返回True 这个时候我们可以灵活的设置HandledHandled设置为True代表取消当前操作也就是达到限制文本筛选条件

posted @   害羞的青蛙  阅读(511)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
点击右上角即可分享
微信分享提示