WPF 程序无法触摸操作?我们一起来找原因和解决方法!

WPF 自诞生以来就带着微软先生的傲慢。微软说 WPF 支持触摸,于是 WPF 就真的支持触摸了。对,我说的是“支持触摸”,那种摸上去能点能动的;偶尔还能带点儿多指的炫酷效果。但是,WPF 推出那会儿,绝大部分开发者都还没有触摸屏呢,开发个程序要怎么验证支不支持触摸呢?微软先生无奈地决定——你写鼠标的代码就好了,我帮你转换!于是……一大波 BUG 袭来……


WPF 触摸失效的分类

我将 WPF 的触摸失效总结成三种不同的类型。

  1. 触摸下 Stylus/Touch 事件正常触发,但不提升为 Mouse 事件;导致仅使用 Mouse 事件的控件无法使用
  2. 触摸下 Stylus/Touch 有触发,但触发点位置在 (0, 0) 处或上一个触摸点处;导致即使触发了,当前控件也收不到
  3. 触摸下无 Stylus/Touch 事件,也不提升为 Mouse 事件,但鼠标下有 Mouse 事件;导致整个界面完全无法触摸使用
第一种情况

使用触摸或者触笔操作时,如果 Up 事件中发生了任何异常,会导致 StylusLogic.PostProcessInput 的后续逻辑不会正确执行,这就包括了用于清理触控资源的 StylusTouchDevice.OnDeactivate 方法。需要注意的是:Up 事件不止是 TouchUp 或者 StylusUpMouseUp 也会引发这样的触摸失效。

而在 StylusTouchDevice.OnDeactivate 方法中&

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
### 回答1: WPF自定义工控触控键盘是一种特殊的应用程序,主要是为了更好地满足工业控制领域的需求。在传统的工控设备中,物理键盘通常很大,不便于移动和安装。而且,有时需要工程师们花费大量精力来编写复杂的驱动程序WPF自定义工控触控键盘可以解决这些问题。相对于传统物理键盘,它更加轻便和灵活;更重要的是,只需要少量的代码即可实现高度个性化的特征,大大减少了工程师们的工作量。因此,WPF自定义工控触控键盘已成为很多工业控制领域的首选方案。 在实际应用过程中,WPF自定义工控触控键盘通常有以下特点: 1. 优秀的触摸感应效果,能够更好地适应不同的触摸屏幕需求。 2. 可以高度定制化,可以根据客户的需求来进行UI界面和交互方式的调整,满足更广泛的应用需求。 3. 实时性高,能够满足各类复杂的系统应用,保证数据的实时采集与处理。 4. 代码量少,相对于传统的物理键盘,它无需编写太多的驱动程序,能够更加高效地进行开发。 总之,WPF自定义工控触控键盘具有很多优势,并逐渐成为工业控制领域的主流方案。它能够为用户提供更加灵活和可定制的应用方案,带来更高效、安全的工业生产和操作体验。 ### 回答2: WPF自定义工控触控键盘是一种便捷的实现机器人人机交互的方法。这种自定义工控触控键盘根据机器人实际需求,以可视化的方式设计界面,并实现可定制的功能,既简单又灵活。 在WPF自定义工控触控键盘中,我们可以使用WPF中的控件和布局来定义机器人控制面板。机器人控制面板可以通过添加按钮、文本框、下拉框等控件进行快捷控制。在这个过程中,我们可以使用各种布局以确保面板的外观精美和可用性。 使用WPF自定义工控触控键盘时还可以使用许多流行的控件库,使设计变得更加简单,如Telerik、Syncfusion、DevExpress等,这些库提供了大量可重用的控件和样式,可以轻松创建可定制化的控制面板以及其他用户界面。 WPF自定义工控触控键盘不仅可以使机器人控制面板可视化,也可以将机器人控制与电脑的其他硬件设备、应用程序和网络设备有机地结合在一起。例如,可以通过编写代码将机器人的控制指令发送到网络设备,从而实现通过互联网控制机器人。 总之,WPF自定义工控触控键盘使机器人控制面板的设计更加自由和灵活,使机器人控制更加便捷和高效。这种自定义工控触控键盘可以实现各种机器人任务的快速实现,是机器人应用领域的重要技术之一,同时也是人机交互领域不可或缺的一部分。 ### 回答3: WPF是一种用于.NET框架的GUI开发工具,可以用来创建各种桌面应用程序。在工控应用领域,触控键盘已经成为常见的工具,可以用来实现人机交互,提高工作效率。通过WPF自定义工控触控键盘,可以实现更加灵活和个性化的功能。 WPF提供了许多UI控件,可以用来创建各种视觉元素。开发者可以利用这些控件创建自定义的触控键盘,并将其集成到工控应用中。例如,可以使用按钮控件来创建各种键位,使用文本框控件来显示输入的字符等等。WPF还提供了丰富的样式和模板功能,可以用来美化自定义键盘的外观,并实现与应用程序的整体风格统一。 在工控应用中,触控键盘需要具备一些特殊的功能,如支持多种输入方式(单击、滑动、长按等)、精准的触控响应和持久化的自定义设置等。为了实现这些功能,开发者需要对WPF触摸事件机制有深入的理解,并根据实际需求进行相应的处理和优化。 总之,通过WPF自定义工控触控键盘,可以提高工控应用的交互性和实用性,满足不同场景下的需求,同时也能增加开发者的编程技能和经验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值