Sam*_*Sam 4 transitions windows-phone-7
我已经下载了最新的Windows.Phone.Controls.Toolkit并在app.xaml.cs中更改了
RootFrame = new PhoneApplicationFrame();
Run Code Online (Sandbox Code Playgroud)
至
RootFrame = new TransitionFrame();
Run Code Online (Sandbox Code Playgroud)
我预计页面之间的转换会发生一些变化,但一切都没有发生.
我是否需要做更多的事情来实现更有趣的过渡?
你必须添加参考 xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"
并通过添加以下命令尝试Turnstile效果:
<toolkit:TransitionService.NavigationInTransition>
<toolkit:NavigationInTransition>
<toolkit:NavigationInTransition.Backward>
<toolkit:TurnstileTransition Mode="BackwardIn"/>
</toolkit:NavigationInTransition.Backward>
<toolkit:NavigationInTransition.Forward>
<toolkit:TurnstileTransition Mode="ForwardIn"/>
</toolkit:NavigationInTransition.Forward>
</toolkit:NavigationInTransition>
</toolkit:TransitionService.NavigationInTransition>
<toolkit:TransitionService.NavigationOutTransition>
<toolkit:NavigationOutTransition>
<toolkit:NavigationOutTransition.Backward>
<toolkit:TurnstileTransition Mode="BackwardOut"/>
</toolkit:NavigationOutTransition.Backward>
<toolkit:NavigationOutTransition.Forward>
<toolkit:TurnstileTransition Mode="ForwardOut"/>
</toolkit:NavigationOutTransition.Forward>
</toolkit:NavigationOutTransition>
</toolkit:TransitionService.NavigationOutTransition>
Run Code Online (Sandbox Code Playgroud)
到每个页面你想要有过渡效果.
或者您可以尝试其他效果,例如:滑动,旋转,旋转和滚动.
后人:
如果您不想为每个页面编写所有XAML,请创建一个辅助类并在页面的构造函数中应用过渡.
Transitions.cs
public class Transitions {
/// <summary>
/// Set the Turnstile transition for this UIElement
/// </summary>
/// <param name="element"></param>
public static void UseTurnstileTransition(UIElement element)
{
TransitionService.SetNavigationInTransition(element,
new NavigationInTransition() {
Backward = new TurnstileTransition() {
Mode = TurnstileTransitionMode.BackwardIn
},
Forward = new TurnstileTransition() {
Mode = TurnstileTransitionMode.ForwardIn
}
}
);
TransitionService.SetNavigationOutTransition(element,
new NavigationOutTransition() {
Backward = new TurnstileTransition() {
Mode = TurnstileTransitionMode.BackwardOut
},
Forward = new TurnstileTransition() {
Mode = TurnstileTransitionMode.ForwardOut
}
}
);
}
}
Run Code Online (Sandbox Code Playgroud)
ExamplePage.xaml.cs
public partial class ExamplePage : PhoneApplicationPage {
public ExamplePage() {
InitializeComponent();
Transitions.UseTurnstileTransition(this);
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2172 次 |
最近记录: |