jak użyć zmienionego elementu panoramy
Próbuję wykryć bieżący element panoramy, na którym aktualnie znajduje się użytkownik, a następnie odpowiednio przełączyć przycisk ikony paska aplikacji na isenabled właściwość. Nie miałem szczęścia, jak zaimplementować taką funkcję lub poprawnie wykryć bieżący element panoramy. W szczególności chciałbym użyć właściwości selectedItem i wykryć nazwę elementów panoramy zamiast właściwości selectedIndex, ponieważ elementy panoramy mogą zmienić ich kolejność. Czy jest jakiś sposób, aby to zrobić? Do tej pory mam co następuje:
MainPage.xaml
<controls:Panorama SelectionChanged="PanoramaItemSelectionChanged">
<!--Panorama item one-->
<controls:PanoramaItem Header="statuses" >
...
</controls:PanoramaItem>
<!--Panorama item two-->
<controls:PanoramaItem Header="mentions" >
...
</controls:PanoramaItem>
<!--Panorama item three-->
<controls:PanoramaItem Header="messages" >
...
</controls:PanoramaItem>
<!--Panorama item four-->
<controls:PanoramaItem Header="favorites" >
...
</controls:PanoramaItem>
</controls:Panorama>
MainPage.xaml.cs
private void PanoramaItemSelectionChanged(object sender, SelectionChangedEventArgs e)
{
string currentPanoramaItem = e.AddedItems[0] as string;
switch (currentPanoramaItem)
{
case "statuses":
//show application bar button?
break;
case "mentions":
//show application bar button?
break;
case "messages":
((ApplicationBarIconButton)ApplicationBar.Buttons[0]).IsEnabled = true;
break;
case "favorites":
//show application bar button?
break;
default:
return;
}
}
moja implementacja SelectionChanged nie działa z jakiegoś powodu. Jakieś pomysły (na przykład proszę)?