四个全景区域代码如下:
<controls:PanoramaItem Header="最新动态"> <ListBox x:Name="All" Margin="0,0,-12,0" ItemsSource="{Binding}"> </ListBox> </controls:PanoramaItem> <controls:PanoramaItem Header="分类查看"> <ListBox Margin="0,0,-12,0"> <ListBoxItem> <StackPanel Orientation="Horizontal" Margin="0,0,0,17"> <Image Width="100" Height="100" Source="images/sinablog.png" Margin="12,0,9,0"/> <StackPanel Width="311"> <TextBlock Text="新浪微博" FontSize="42.667" /> <TextBlock Text="对该功能的描述" FontSize="20" /> </StackPanel> </StackPanel> </ListBoxItem> <controls:PanoramaItem Header="我的关注"> <ListBox x:Name="Care" Margin="0,0,-12,0" ItemsSource="{Binding}"> </ListBox> </controls:PanoramaItem> <controls:PanoramaItem Header="发布状态"> </controls:PanoramaItem>
其中“最新动态”这个全景区域的菜单栏代码如下:
<phone:PhoneApplicationPage.ApplicationBar> <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True" Opacity="0.5" StateChanged="ApplicationBar_StateChanged"> <shell:ApplicationBar.MenuItems> <shell:ApplicationBarMenuItem Text="清空全部状态" Click="ApplicationBarMenuItem_Click"/> <shell:ApplicationBarMenuItem Text="切换账号" Click="ApplicationBarMenuItem_Click_1"/> <shell:ApplicationBarMenuItem Text="设置与帮助" Click="ApplicationBarMenuItem_Click_2"/> </shell:ApplicationBar.MenuItems> </shell:ApplicationBar> </phone:PhoneApplicationPage.ApplicationBar>
如何才能让这个菜单栏只在“最新动态”这个全景区域中显示?
没有办法!
以前写的例子:
在PhoneApplicationPage.Resources中添加ApplicationBar
在xaml中:
在Pivot_SelectionChanged事件中:
可以用资源实现!
资源中预写入多种bar
然后代码中通过判断目前处于第几项的全景区域,然后动态加载Bar到UI中就可以实现了