WP7 Silverlight多点触摸事件详解与示例
4星 · 超过85%的资源 需积分: 3 200 浏览量
更新于2024-09-18
收藏 59KB DOCX 举报
"这篇日志主要讲解了Silverlight在Windows Phone 7 (WP7) 平台上的多点触摸事件处理,包括低级别和高级别的编程模式,并提供了相关的Demo代码。"
在Windows Phone 7的Silverlight应用开发中,多点触摸功能是一个重要的特性,允许用户通过两个或更多手指与设备交互。这篇日志详细介绍了如何利用Silverlight来处理多点触摸事件,主要分为两个层次:低级别使用`Touch.FrameReported`事件,以及高级别使用`UIElement`类中的`ManipulationStarted`,`ManipulationDelta`和`ManipulationCompleted`事件。
1. 低级别触摸事件:`Touch.FrameReported`
`Touch.FrameReported`事件是全局级别的,它不像其他Silverlight的输入事件那样按照元素树路由。当多点触控输入发生时,此事件会在应用程序级别触发。开发者需要处理`Touch.FrameReported`事件,通过`TouchFrameEventArgs`来获取触控点信息。注册该事件的代码如下:
```csharp
Touch.FrameReported += OnTouchFrameReported;
```
`OnTouchFrameReported`方法会接收到所有的触控点信息,可以调用`GetPrimaryTouchPoint`和`GetTouchPoints`方法来获取触控点的位置和状态。`GetTouchPoints`方法接收一个UI元素参数,用于获取相对于该元素的触控点位置。
2. 高级别触摸事件:`Manipulation*`事件
高级别触摸事件提供了一种更抽象的方式来处理触摸输入,适合处理更复杂的交互。`UIElement`类定义了三个事件:
- `ManipulationStarted`:在触摸开始时触发,标志着一个新的操纵开始。
- `ManipulationDelta`:在每次触摸移动时触发,提供了关于手指移动的信息,如平移、旋转或缩放等。
- `ManipulationCompleted`:当操纵结束时触发,用于处理最终状态。
这些事件提供了对触摸输入的封装,使得开发者可以更容易地实现平滑的多点触摸交互,例如滚动、旋转和捏合操作。
通过这两个级别的事件处理,开发者可以根据需求选择合适的机制来处理Windows Phone 7上的多点触摸交互。在实际项目中,通常会结合低级别和高级别事件,以实现更为灵活且丰富的用户界面体验。
日志中提供的Demo代码可以帮助开发者更好地理解和实践这些概念,确保他们能够在自己的应用中有效地利用多点触摸功能。在学习和实践中,不断探索和优化这些事件处理机制,能够创建出更加自然、直观的WP7 Silverlight应用。
2021-10-10 上传
2021-02-06 上传
2010-06-11 上传
2010-09-18 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
wxf91
- 粉丝: 2
- 资源: 16
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍