Behavior的使用,让UI设计师能够更加方便的进行UI设计,更高效地和开发进行合作。Behavior有三种触发方式:EventTriggerBehavior事件触发,DataTriggerBehavior数据变化触发,IncrementalUpdateBehavior增量更新触发(ListView、GridView)。
系统提供的 Behavior自己并不能完成一个操作或者功能,需要Action协同操作。Behaviors SDK(Xaml) Version12.0 Targets Windows8.1提
供了5种Action:CallMethodAction调用指定方法,ChangePropertyAction改变属性值,GoToStateAction改变控件状态,
InvokeCommandAction命令处理,NavigateToPageAction页面跳转。
今天先介绍NavigateToPageAction页面跳转,UWP的开发中页面跳转有多种方式,HyperlinkButton页面跳转按钮、CodeBehind、ViewModel
都可以实现,各有优缺点,根据自己的需要进行选择。NavigateToPageAction的优点是通过Behavior进行处理,可以附加到任何控件上,非常方便,
比如有些页面跳转是点击一个TextBlock进行的。
Demo比较简单,两个页面MainPage、SecondPage,MainPage有个按钮点击跳到SecondPage,SecondPage上有个TextBlock标识页面。
1 <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 2 <Button Content="Navigation" 3 Background="Red" 4 Foreground="White" 5 HorizontalAlignment="Center" 6 VerticalAlignment="Center"> 7 <i:Interaction.Behaviors> 8 <core:EventTriggerBehavior EventName="Click"> 9 <core:NavigateToPageAction TargetPage="NavigationToPageActionDemo.SecondPage"/> 10 </core:EventTriggerBehavior> 11 </i:Interaction.Behaviors> 12 </Button> 13 </Grid>
1 <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 2 <TextBlock Text="SecondPage" 3 VerticalAlignment="Center"/> 4 </Grid>
关键步骤:引用Behaviors SDK
关键代码: