WPF开发经验-WPF的TextBox控件的MouseDown事件不响应的解决方法

这篇具有很好参考价值的文章主要介绍了WPF开发经验-WPF的TextBox控件的MouseDown事件不响应的解决方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


一 问题的发现

最近项目有个需求,大概是,当点击某个TextBox时,先执行一些业务上的逻辑处理。
于是按以往思维,将TextBox的MouseDown事件关联事件处理方法,将业务处理写在方法里。
调试发现,点击TextBox时,事件处理方法未执行。


二 问题的原因

通过查阅微软官方文档了解到问题原因。WPF开发经验-WPF的TextBox控件的MouseDown事件不响应的解决方法
附上文档链接:https://docs.microsoft.com/en-us/previous-versions/dotnet/netframework-3.5/ms750580(v=vs.90)
TextBox内置了处理MouseDown事件的方法,其内部的方法处理完后将事件标记为Handled。
因此,从TextBox中侦听MouseDown事件的自定义事件处理程序永远不会被调用。


三 如何解决

3.1 侦听PreviewMouseDown事件

WPF提供了相应的Preview事件。

3.2 使用AddHandler添加自定义的路由事件。

textBox.AddHandler(TextBox.MouseDownEvent, new MouseButtonEventHandler(textBox_MouseDown), true);文章来源地址https://www.toymoban.com/news/detail-472576.html

到了这里,关于WPF开发经验-WPF的TextBox控件的MouseDown事件不响应的解决方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 界面控件DevExpress WPF属性网格 - 让应用轻松显示编辑各种属性事件

    DevExpress WPF Property Grid(属性网格)灵感来自于Visual Studio,Visual Studio启发的属性窗口(对象检查器)让在WPF应用程序显示和编辑任何对象的属性和事件变得更容易! P.S :DevExpress WPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress

    2024年01月18日
    浏览(66)
  • WPF --- TextBox的输入校验

    在WPF应用程序开发中,数据校验是确保用户输入数据的正确性和完整性的重要一环。 之前在做一些参数配置功能时,最是头疼各种参数校验,查阅一些资料后,我总结了数据校验方式有两种: ValidationRule IDataErrorInfo 接下来分别介绍这两种校验方式。 ValidationRule 是一个抽象类

    2024年02月05日
    浏览(71)
  • WPF TextBox内容修改命令

    TextBox     Background=\\\"{x:Null}\\\"     Text=\\\"{Binding SearchForContent, Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}\\\"     i:Interaction.Triggers         i:EventTrigger EventName=\\\"TextChanged\\\"             i:InvokeCommandAction Command=\\\"{Binding TextChangedCommand}\\\" /         /i:EventTrigger         i:EventTrigger EventName=\\\"LostFocu

    2024年02月11日
    浏览(38)
  • 使用mousedown/mouseup/mousemove事件实现拖拽双分栏中间的线,改变两边的宽度

    很多拖拽改变宽度的需求,你可能首先想到的是使用html的拖放api,但是你会发现拖拽并且移动鼠标的过程中是没有事件触发的,这就导致你无法实时改变两边元素的宽度。 只有一个dragover,但是貌似无法满足需求 dragover ondragover (en-US) 当元素或选中的文本被拖到一个可释放目

    2024年02月12日
    浏览(41)
  • wpf 系统在显示器分辨率和缩放设置为非1920*1080和100%时,SelectionChanged事件响应问题分析?

    系统在显示器分辨率和缩放设置为1920*1080和100%时,窗口四分格能正常响应SelectionChanged事件,但是当缩放为125%时,或是分辨率大于1920*1080时四分格其中一个格子的下侧和右侧点击不响应,什么原因?   描述的问题可能由以下几个原因导致: 布局问题 : 在高分辨率或较高缩放

    2024年02月03日
    浏览(69)
  • C#控件编程详解之文本框(TextBox)

    摘要:以自身开发经验,从属性与事件详解文本框(TextBox)的用法。 编程语言:C# 编程环境:Visual Studio 2019 目录 TextBox控件属性  布局 设计 外观 行为  TextBox控件事件  小结  每篇寄语         TextBox提供文字输入和显示功能,应用广泛,随处可见,作为一个Winform开发者,

    2024年02月16日
    浏览(43)
  • WPF工控机textbox获得焦点自动打开软键盘

    1.通过nuget安装 osklib.wpf  2.在textbox getFoucs中敲入如下代码即可实现获得焦点弹出软键盘  3.如果界面上的textbox比较,就直接在窗体事件中写。注意第一句为判断是否为textbox

    2024年02月10日
    浏览(44)
  • WPF应用开发之控件动态内容展示

    在我们开发一些复杂信息的时候,由于需要动态展示一些相关信息,因此我们需要考虑一些控件内容的动态展示,可以通过动态构建控件的方式进行显示,如动态选项卡展示不同的信息,或者动态展示一个自定义控件的内容等等,目的就是能够减少一些硬编码的处理方式,以

    2024年02月05日
    浏览(63)
  • 【WPF.NET开发】预览事件

    先决条件 预览标记为“已处理”的事件 通过控件解决事件禁止问题 预览事件,也称为隧道事件,是从应用程序根元素向下遍历元素树到引发事件的元素的路由事件。 引发事件的元素在事件数据中报告为Source 。 并非所有事件场景都支持或需要预览事件。 本文介绍了预览事件

    2024年02月03日
    浏览(48)
  • WPF开发一个可以自适应排列的Panel控件

    一.控件介绍     初看标题可能无法理解,我们看看什么是自适应排列。 乍一看它有点像WrapPanel控件,都是从左至右排列,如果一行排列不下就换行继续排列,但是细看你就会发现不对,WrapPanel控件行尾是不会对齐的,也就是说只要WrapPanel的子控件的宽度不一致,每一行的

    2024年04月08日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包