Как настроить панель приложения не отображаться или показывать другие кнопки на разных страницах Windows Phone 7? - PullRequest
1 голос
/ 25 октября 2010

Я возился с этой панелью приложений Windows Phone 7, когда заметил, что даже установка другой панели приложений в XAML не приведет к ее изменению на разных страницах приложения (что довольно раздражает, я должен сказать).Я намерен использовать эту панель с некоторыми кнопками, которые меняются в зависимости от отображаемой страницы, скажем, в главном меню, она не будет отображать значок главного меню, но на другой странице это будет.Ребята, можете ли вы помочь мне?

Страница 1:

<phone:PhoneApplicationPage.ApplicationBar>
        <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True">
            <shell:ApplicationBar.Buttons>
                <shell:ApplicationBarIconButton IconUri="Icons/mainmenu.png" Text="Main Menu"  />
                <shell:ApplicationBarIconButton IconUri="Icons/list.png" Text="Comic List"  />
                <shell:ApplicationBarIconButton IconUri="Icons/settings.png" Text="Settings"  IsEnabled="True" x:Name="ApplicationBarUploadIconButton" />
            </shell:ApplicationBar.Buttons>

        </shell:ApplicationBar>
    </phone:PhoneApplicationPage.ApplicationBar>

Страница 2:

<phone:PhoneApplicationPage.ApplicationBar>
        <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True">
            <shell:ApplicationBar.Buttons>
                <shell:ApplicationBarIconButton IconUri="Icons/settings.png" Text="Settings"  />
                <shell:ApplicationBarIconButton IconUri="Icons/list.png" Text="Comic List"  />
                <shell:ApplicationBarIconButton IconUri="Icons/download.png" Text="Download Comic"  IsEnabled="True" x:Name="ApplicationBarUploadIconButton" />
            </shell:ApplicationBar.Buttons>

        </shell:ApplicationBar>
    </phone:PhoneApplicationPage.ApplicationBar>

Страница 3:

 <phone:PhoneApplicationPage.ApplicationBar>
        <shell:ApplicationBar IsVisible="False" IsMenuEnabled="False">
        </shell:ApplicationBar>
    </phone:PhoneApplicationPage.ApplicationBar>

Панель приложения всегда одна и та же и всегда отображается (даже если это явное объявление на странице 3 не отображать).

Заранее спасибо!

Ответы [ 2 ]

0 голосов
/ 11 января 2014

Вы можете использовать событие SelectionChanged элемента управления для проверки выбранного индекса страницы ...

private void Panorama_SelectionChanged(object sender, SelectionChangedEventArgs e)
    {
        if(panaroma.SelectedIndex == 1) //Your required page index
            ApplicationBar.IsVisible = true;
        else
            ApplicationBar.IsVisible = false; // other pages will be hidden            
    }
0 голосов
/ 25 октября 2010

Вы действительно можете иметь разное количество кнопок на панели приложений на разных страницах.Если вы добавили панель приложения на страницу и видите 4 пустые округлые области на каждой странице, не о чем беспокоиться - это только представление дизайнера.Например, в вашем MainPage.xaml вы можете использовать панель приложений, например, так:

<phone:PhoneApplicationPage.ApplicationBar>
  <shell:ApplicationBar IsVisible="True" IsMenuEnabled="True">
     <shell:ApplicationBarIconButton IconUri="/Images/appbar.refresh.rest.png" 
                                     Text="Refresh"
                                     Click="RefreshPage_Click" />
  </shell:ApplicationBar>
</phone:PhoneApplicationPage.ApplicationBar>

На странице DetailsPage.xaml вы можете использовать панель приложений, например, так:

HTH, индифромоз

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...