2011-04-19 73 views
0

我已將MouseLeftButtonUp事件添加到畫布以捕獲點擊(或觸摸)事件。現在,當點擊畫布時,用戶沒有指示他點擊了畫布(意味着沒有按下的效果)。點擊畫布時如何創建這種效果。動畫,同時點擊

回答

0

對於一個畫布,這將是棘手。你可以不使用按鈕嗎?您可以將畫布的內容放入按鈕內容中。然後,您可以使用該按鈕的視覺狀態來指示它正在被按下時。

或者,您可以使用控件上的操作事件並相應地改變它的外觀。

0

如果你已經安裝該工具包,您可以設置通過設置

toolkit:TiltEffect.IsTiltEnabled="True" 

使TiltEffect,然後你將需要與控制,比方說,一個按鈕來包裝你的畫布。

我實際上使用了一個ListBoxItem來接收傾斜效果。 :)

 <ListBoxItem Style="{StaticResource ListBoxItemStyle}"> 
      <Canvas Margin="{StaticResource PhoneVerticalMargin}" Background="Transparent"> 
       <Custom:Interaction.Triggers> 
        <Custom:EventTrigger EventName="MouseLeftButtonDown"> 
         <ic:NavigateToPageAction TargetPage="/Views/xxxView.xaml" /> 
        </Custom:EventTrigger> 
       </Custom:Interaction.Triggers> 
0

您可以嘗試從download.microsoft.com下載this示例項目。它包含TiltEffect.cs,您可以將其添加到您自己的項目中,例如在.xaml文件中(參見最後一行):

<phone:PhoneApplicationPage 
    x:Class="NavigationTest.MainPage" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone" 
    xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone" 
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
    xmlns:local="clr-namespace:NavigationTest" 
    mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="768" 
    FontFamily="{StaticResource PhoneFontFamilyNormal}" 
    FontSize="{StaticResource PhoneFontSizeNormal}" 
    Foreground="{StaticResource PhoneForegroundBrush}" 
    SupportedOrientations="Portrait" Orientation="Portrait" 
    shell:SystemTray.IsVisible="True" 
    local:TiltEffect.IsTiltEnabled="True">