【WPF 体系结构】输入系统 Input
Input (输入系统)的体系结构
输入(Input)
Windows Presentation Foundation (WPF)包括对几种输入类型的支持。这种输入包括文本、触笔输入、鼠标、聚焦、触摸、拖放和数字墨水以上都是设备输入、命令(偏向语义)
主要的输入API暴露在基元素类上:UIElement、ContentElement、FrameworkElement和FrameworkContentElement。有关基本元素的更多信息,请参见基本元素概述。这些类提供了与按键、鼠标按钮、鼠标滚轮、鼠标移动、焦点管理和鼠标捕获等相关的输入事件的功能。通过将输入API放置在基本元素上,而不是将所有输入事件视为服务,输入体系结构允许由UI中的特定对象提供输入事件来源,并支持事件路由方案,使多个元素有机会处理一个输入事件。许多输入事件都有一对与之关联的事件。例如,key down事件与KeyDown和PreviewKeyDown事件相关联。这些事件的不同之处在于如何将它们路由到目标元素。预览事件沿着元素树从根元素向下延伸到目标元素。冒泡事件从目标元素冒泡到根元素。WPF中的事件路由将在后面的概述和路由事件概述中详细讨论。
备注:什么是数码墨水(Digital Ink)? 数字墨水是一种技术,它允许手写和电子笔以电子方式添加到文档中,并显示在计算机显示器上,保存格式是ink
输入 API
主要输入 API 公开存在于以下基元素类上:UIElement、ContentElement、FrameworkElement 和 FrameworkContentElement。 有关基元素的详细信息,请参阅基元素概述。 这些类提供有关输入事件(例如按键、鼠标按钮、鼠标滚轮、鼠标移动、焦点管理和鼠标捕获等)的功能。 通过将输入 API 放置在基元素上,而不是将所有输入事件视作一项服务,该输入体系结构使输入事件可以由 UI 中的特定对象指明其出处,并支持事件路由方案,从而使得多个元素有机会处理输入事件。 许多输入事件都具有与之相关联的一对事件。 例如,键盘按下事件与 KeyDown 和 PreviewKeyDown 事件相关联。 这些事件的区别在于它们如何路由至目标元素。 预览事件将元素树从根元素到目标元素向下进行隧道操作。 冒泡事件从目标元素到根元素向上进行冒泡操作。 WPF 中的事件路由在本概述的后面和路由事件概述中有更详细的讨论。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性