• [织梦吧]唯一域名:www.dedecms8.com,织梦DedeCMS学习平台.

当前位置: > 编程与数据库 > net编程 >

UI前沿技术-WPF中的多点触控操作事件(2)

来源: www.dedecms8.com 编辑:织梦吧 时间:2012-06-27点击:

基于 Web 的 Silverlight 4 应用程序将继续使用 Touch.FrameReported 事件,我曾在 2010 年 3 月出版的 MSDN 杂志“手指之舞:探讨 Silverlight 中的多点触控支持”一文中探讨过该事件。

除操作事件本身以外,WPF 中的 UIElement 类还支持与操作事件对应的可覆盖方法,例如,On­ManipulationStarting。在 Silverlight for Windows Phone 7 中,这些可覆盖方法由 Control 类定义。

 

多点触控示例

照片查看器可能是多点触控的典型应用,在照片查看器中,您可以在一个平面上移动照片,用两根手指放大或缩小照片以及旋转照片。这些操作有时称为平移、缩放和旋转,它们分别对应于平移、缩放和旋转的标准图形转换。

很明显,照片查看程序需要维护照片集合,支持添加新照片和删除照片,并且最好能始终在一个较小的图形帧中显示多张照片,但我准备忽略所有这些方面,而着重介绍多点触控交互。有了操作事件,一切都变得非常简单,这让我感到非常吃惊,我相信你们也会有同感。

本专栏的所有源代码位于一个名为 WpfManipulationSamples 的可下载解决方案中。第一个项目是 SimpleManipulationDemo,MainWindow.xaml 文件在图 2 中显示。

图 2 SimpleManipulationDemo 的 XAML 文件

<Window x:Class="SimpleManipulationDemo.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Simple Manipulation Demo">

<Window.Resources>
<Style TargetType="Image">
<Setter Property="Stretch" Value="None" />
<Setter Property="HorizontalAlignment" Value="Left" />
<Setter Property="VerticalAlignment" Value="Top" />
</Style>
</Window.Resources>

<Grid>
<Image Source="Images/112-1283_IMG.JPG"
IsManipulationEnabled="True"
RenderTransform="0.5 0 0 0.5 100 100" />

<Image Source="Images/139-3926_IMG.JPG"
IsManipulationEnabled="True"
RenderTransform="0.5 0 0 0.5 200 200" />

<Image Source="Images/IMG_0972.JPG"
IsManipulationEnabled="True"
RenderTransform="0.5 0 0 0.5 300 300" />

<Image Source="Images/IMG_4675.JPG"
IsManipulationEnabled="True"
RenderTransform="0.5 0 0 0.5 400 400" />
</Grid>
</Window>

About D8

  • ©2014 织梦吧(d8) DedeCMS学习交流平台
  • 唯一网址 www.DedeCMS8.com 网站地图
  • 联系我们 1170734538@qq.com ,  QQ