不懂就问-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 这个时候我们可以灵活的设置Handled 当Handled设置为True就代表取消当前操作也就是达到限制文本筛选条件
分类:
WPF
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义