点击动画

时间:2011-04-19 05:52:50

标签: windows-phone-7

我已将MouseLeftButtonUp事件添加到画布以捕获单击(或触摸)事件。现在,当点击画布时,没有指示用户他已点击它(意味着没有按下效果)。如何在单击画布时创建此类效果。

3 个答案:

答案 0 :(得分:0)

对于画布来说,这将是棘手的。你可以不用按钮吗?您可以将画布的内容放在按钮内容中。然后,您可以使用按钮的可视状态指示何时按下它。

或者,您可以使用控件上的操作事件并相应地更改其外观。

答案 1 :(得分:0)

如果安装了工具包,可以通过设置

设置启用TiltEffect
toolkit:TiltEffect.IsTiltEnabled="True"

然后你需要用一个Control包装你的Canvas,比如一个Button。

我实际上使用了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>

答案 2 :(得分: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">