• Windows Phone Tilt effect on HubTile and other Controls




    In this article I will talk about creating tilt effect in different control in Windows Phone. Implementing tilt effect on controls are easy but few controls like Hubtile, textblock don't create tilt effect itself. We need to little bit work around to achieve. In this article first we will look into how to create tilt effect on normal controls then we will discuss on how to put tilt effect on hubtile, textblock.


    Let's write code:


    Download Silverlight Windows Phone Toolkit


    Step 1: Create a silverlight for Windows Phone project.


    Step 2: Add reference of Microsoft.Phone.Controls.Toolkit.dll


    Step 3: Add namespace of Microsoft.Phone.Controls.Toolkit in MainPage.xaml.


    xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"


    Step 4: Add below line in phone:PhoneApplicationPage element.


    toolkit:TiltEffect.IsTiltEnabled="True"


    Step 5: Add a listbox and a button inside ContenPanel of MainPage.xaml.


    <ListBox Margin="20,280,0,0" Height="80" FontSize="28" >
    <ListBoxItem Content
    ="Item1"/>
    <ListBoxItem Content
    ="Item2"/>
    </ListBox>


    <Button x:Name="tiltEffect" Margin="20,480,0,0" Height="80" Width="430" Content="Tilt" />


    Step 5: Now run the application and on touch of listbox item and button you will notice tilt effect.


    Step 6: To suppress tilt effect for a particular item of ListBox or control we can use below code.


    toolkit:TiltEffect.SuppressTilt="True"


    Step 7: Now replace code of Step 5 with below code and run the application, the highlighted code will suppress the tilt effect.


    <ListBox Margin="20,280,0,0" Height="80" FontSize="28" >
    <ListBoxItem Content="Item1" toolkit:TiltEffect.SuppressTilt
    ="True"/>
    <ListBoxItem Content
    ="Item2"/>
    </ListBox>


    <Button x:Name="tiltEffect" toolkit:TiltEffect.SuppressTilt="True" Margin="20,480,0,0" Height="80" Width="430" Content="Tilt" />


    Step 8: Now add a hubtile, textblock and image inside ContentPanel of MainPage.xaml.


    <toolkit:HubTile Title="UnFreezed Title" Background="Maroon" x:Name="hubTile1" />


    <Image Source="/TestTilt.png" Margin="0" HorizontalAlignment="Left" Height="173" Width="173" VerticalAlignment="top"/>


    <TextBlock Text="Testing" Style="{StaticResource PhoneTextExtraLargeStyle}" Height="100" Margin="200,-410,12,0" />


    Step 9: Now run the application again and you will notice tile effect won't work for hubtile, image and textblock.


    Let's implement tilt effect for hubtile, image and textblock.


    Step 10: Now create a class TiltableControl (Highlighted) which in MainPage.xaml.cs above MainPage class.


    namespace Windows_Phone___Tile_Effect
    {
    public class TiltableControl :
    Grid
    {
    }


    public partial class MainPage : PhoneApplicationPage
    {


    Step 11: Add TiltableControl in TiltableItems like shown below in the MainPage constructor.


    TiltEffect.TiltableItems.Add(typeof(TiltableControl));


    Step 12: Add namespace like below in MainPage.xaml.


    xmlns:myTilt="clr-namespace:Windows_Phone___Tile_Effect"


    Step 13: Now wrap the hubtile, textblock and image control created in Step 8 with TiltableControl.


    <myTilt:TiltableControl>
    <Image Source="/TestTilt.png" Margin="0" HorizontalAlignment="Left" Height="173" Width="173" VerticalAlignment
    ="top"/>
    </myTilt:TiltableControl>


    <myTilt:TiltableControl>
    <TextBlock Text="Testing" Style="{StaticResource PhoneTextExtraLargeStyle}" Height="100" Margin
    ="200,-410,12,0" />
    </myTilt:TiltableControl>


    <myTilt:TiltableControl>
    <toolkit:HubTile Title="UnFreezed Title" Background="Maroon" x:Name
    ="hubTile1" />
    </myTilt:TiltableControl>


    Step 14: Now run the application, you will notice hubtile, image and textblock has tilteffect.


    This ends the article of tilt effect in hubtile, image and other controls in Windows Phone.

    Like us if you find this post useful. Thanks!
  • 相关阅读:
    颓废ing
    Linux下PF_PACKET的使用(todo)
    TIPC协议(todo)
    TOP命令详解(todo)
    so查找顺序
    把lib打包到so中
    -Bsymbolic: 优先使用本地符号
    GitHub 上最火的 Python 开源项目zz
    __attribute__((weak)) zz
    kmalloc(zz)
  • 原文地址:https://www.cnblogs.com/zziss/p/2734351.html
Copyright © 2020-2023  润新知