2014-05-18 57 views
1

當我的Windows Phone 8.1應用程序頁面中的透視項更改時,需要更改頁面底部的AppBar。我發現的所有示例都與Silverlight Windows Phone 7/8應用程序有關,不適用於通用應用程序Windows Phone 8.1。如何更改窗口手機8.1中數據透視項更改的xaml AppBar

<AppBar x:Name="AppBar1" Visibility="Visible"> 
    <CommandBar> 
     <AppBarButton x:Name="Save" Icon="save" Label="Save" Click="AppBarButton_Click" /> 
     <AppBarButton x:Name="Cancel" Icon="cancel" Label="Cancel" Click="AppBarButton_Click" /> 
    </CommandBar> 
</AppBar> 

<AppBar x:Name="AppBar2" Visibility="Collapsed"> 
    <CommandBar x:Name="AppBar2"> 
     <AppBarButton x:Name="Add" Icon="save" Label="Add" Click="AppBarButton_Click" /> 
    </CommandBar> 
</AppBar> 
+0

你可以看看[這個問題](http://stackoverflow.com/q/23179112/2681948 )。 – Romasz

+0

Thanks @Romasz - 我希望我可以在設計師那裏做,然後只顯示/隱藏適當的。你是說這是不可能的,你必須在運行時編程創建AppBars? – EdenMachine

+0

可以在運行時創建AppBar(CommandBars) - 但是AFAIK,您將不得不以編程方式在代碼中(而不是在xaml中)執行它。正如我在XAML中用資源嘗試過的那樣,它不起作用。你可以準備幾個commandBars是代碼,然後切換它們。 – Romasz

回答

1

XAML

<Pivot x:Name="Pivot" SelectionChanged="Pivot_SelectionChanged"> 
</Pivot> 

C#

private void Pivot_SelectionChanged(object sender, SelectionChangedEventArgs e) 
{ 
    int no = Pivot.SelectedIndex; 
    if(no == 0) 
    { 
     AppBar1.Visibility = Visibility.Visible; 
     AppBar2.Visibility = Visibility.Collapsed; 
    } 
    else 
    { 
     AppBar1.Visibility = Visibility.Collapsed; 
     AppBar2.Visibility = Visibility.Visible; 
    } 
} 
相關問題