WPF Multi-Touch 開發:高效開發模式

作者: Gnie  來源: 博客園  發布時間: 2010-08-22 14:05  閱讀: 1872 次  推薦: 0   原文鏈接   [收藏]  
摘要:無論是哪種觸屏操作都需要開發者逐行逐句的編寫代碼,本篇將為大家介紹一種高效的多點觸屏開發模式。

  在前幾篇文章中已經介紹了觸屏操作的多種模式,并對其開發方式也有了進一步了解。細心的朋友應該會發現在上一篇文章中,如果拖動圖片過快它會因慣性效果飛出程序窗口外,也就是說還需要對其進行邊界限制等相關開發。而且無論是哪種觸屏操作都需要開發者逐行逐句的編寫代碼,本篇將為大家介紹一種高效的多點觸屏開發模式。

  其實我們只需利用CodePlex 中的Multi-Touch Manipulation 項目即可,該程序不僅支持WPF,還可以進行Silverlight 和Windows Phone 7 的項目開發。下載并安裝程序,打開Blend 4 新建項目,在設計窗口繪制一個矩形。

Design

  在Behaviors 菜單中可以找到FluidMoveBehavior和 TranslateZoomRotateBehavior 兩個選項,并將其拖入Rectangle 中使矩形具有觸屏操作特性。 Fluid TRS

Window

  選擇TranslateZoomRotateBehavior  可以進行相關設置,勾選ConstrainToParentBounds 防止矩形飛出程序外。

T

  在FluidMoveBehavior 中可以設置矩形移動的模式及持續時間等屬性。

F

  相關設置完成后看看生成的代碼,可見XAML 其實也很簡單。

<Window
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" 
    xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions"
    x:Class="WpfMT.MainWindow" x:Name="Window" Title="MainWindow" 
    Width="640" Height="480">

    <Grid x:Name="LayoutRoot" Background="#FF7E7878">
        <Rectangle Fill="#FF0B3EDA" Margin="239,181,289,179" Stroke="Black">
            <i:Interaction.Behaviors>
                <ei:TranslateZoomRotateBehavior ConstrainToParentBounds="True"/>
                <ei:FluidMoveBehavior Duration="0:0:2">
                    <ei:FluidMoveBehavior.EaseY>
                        <BackEase EasingMode="EaseOut"/>
                    </ei:FluidMoveBehavior.EaseY>
                    <ei:FluidMoveBehavior.EaseX>
                        <BackEase EasingMode="EaseOut"/>
                    </ei:FluidMoveBehavior.EaseX>
                </ei:FluidMoveBehavior>
            </i:Interaction.Behaviors>
        </Rectangle>
    </Grid>
</Window>

  程序演示

  通過以上在Blend 4 中的開發,不要編寫任何代碼就可以使程序實現多點觸屏操作功能。

  相關文章

  1. WPF Multi-Touch 開發:Windows 7 安裝多點觸屏模擬器
  2. WPF Multi-Touch 開發:基礎觸屏操作(Raw Touch)
  3. WPF Multi-Touch 開發:高級觸屏操作(Manipulation)
  4. WPF Multi-Touch 開發:慣性效果(Inertia)

  源碼下載:WpfMT.zip

0
0
 
標簽:WPF
 
 

文章列表

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()