Frage

Ich entwickle eine einfache App unter Windows 8.
Ich habe zwei Usercontrols: Standorte und Standortmap.
Ich versuche zwischen ihnen zu navigieren. Dafür habe ich statische Methoden in App hinzugefügt. Sie sind so

  public static void ShowLocationsMap()
  {
      var page = new LocationsMap();
      Window.Current.Content = page;
  }

Die Navigation funktioniert einwandfrei. Aber es gibt ein Problem. Ich rufe diese Methode von der Schaltfläche in ApplicationBar auf. Xaml sieht so aus

<ApplicationBar x:Name="BottomAppBar"  Height="88" VerticalAlignment="Bottom" Style="{StaticResource AppBarStyle}" Grid.Row="1">
        <StackPanel Orientation="Horizontal">
            <!-- Margin="left,top,right,bottom" -->
            <StackPanel Orientation="Vertical" Margin="5,14,5,14">
                <Button Content="Map" Click="MapButton_Click"></Button>
            </StackPanel>
        </StackPanel>
    </ApplicationBar>

Und ich navigiere zurück, indem ich andere Funktionen von der nächsten Seite aufruft.
Das Problem ist, dass die Anwendungsleiste, wenn ich zurück navigiert, die Arbeit anhält. Es wird nicht nach der rechten Maustaste angezeigt. Wenn ich setze BottomAppbar.isopen zu Stimmt, Es zeigt sich, aber nicht geschlossen.
Wo ist das Problem?

Ps
ApplicationBar funktioniert nicht auch für den Fall, wenn ich von der Schaltfläche "Controls XAML zu einer anderen Seite zu einer anderen Seite navigiere. Daher ist das Problem nicht in der Schaltfläche in Appbar.

War es hilfreich?

Lösung

Für die Navigation habe ich Beispielcode verwendet, der aus dem Internet heruntergeladen wurde. Dieser Code verwendete statische Funktionen, die in der App -Klasse definiert wurden, die sich veränderten Window.current.content.
Das war eine schlechte Idee. Stattdessen muss ich nur verwenden Rahmennavigation.
Wenn wir es verwenden, müssen wir den Typ unserer Steuerelemente ändern von usercontrol bis Seite.
Die Anwendungsleiste funktioniert jetzt hervorragend mit der Navigation.
Hoffe das wird jemandem helfen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top