Ist es möglich, die Anwendungsleiste nur für ein Pivot-Objekt anzuzeigen?

7

In einer Windows Phone 7-Anwendung verwende ich ein Pivot für die Benutzeroberfläche. Als eines der Elemente des Pivot wird eine XAML-Seite wie folgt eingefügt:

%Vor%

Eine Anwendungsleiste - eine Standardvorlage - wird nur auf dieser Seite verwendet, da sie vom gesamten Pivot nicht benötigt wird. Aber das funktioniert nicht. Im Moment konnte ich die Leiste nur für jedes Pivot-Element aktivieren oder für eine separate Nicht-Pivot-Seite verwenden.

    
87element 15.05.2011, 10:04
quelle

4 Antworten

11

Der einfachste Weg, dies zu tun, ist einfach mit dem Pivot umzugehen: LoadingPivotItem -Ereignis.

Weisen Sie diesem PivotItem einen Namen zu:

%Vor%

Im Code:

%Vor%     
keyboardP 15.05.2011, 14:05
quelle
13

Soweit ich weiß - ApplicationBar ist mit Ihrer Page verknüpft, aber Pivot ist nur ein Steuerelement für Ihre Page . Daher wird ApplicationBar für die gesamte Page zugewiesen, unabhängig davon, welche Registerkarte Pivot angezeigt wird.

Sie können dies tun, indem Sie im Bereich Ressourcen verschiedene Anwendungsleisten definieren:

%Vor%

Und verarbeiten SelectionChanged event in Ihrem Pivot-Steuerelement:

%Vor%     
oxilumin 15.05.2011 10:13
quelle
3

Probieren Sie das aus ... fügen Sie Ihrer PivotPage-Datei xaml.cs die folgende Funktion hinzu und stellen Sie sicher, dass Sie das SelectionChanged-Ereignis hinzufügen, um diese Funktion zu verwenden ...

%Vor%

Ändern Sie den Fall basierend auf den Pivot-Elementen, die in der Anwendungsleiste angezeigt werden sollen. Funktioniert für mich und behandelt die Minimierung der Anwendungsleiste.

    
Rick 30.01.2012 02:31
quelle
2

Obwohl es möglich ist, die ApplicationBar nur zu laden, wenn ein bestimmtes PivotItem angezeigt wird, handelt es sich um ein nicht standardmäßiges Verhalten. Als allgemeine Regel ist es normalerweise nicht gut, den Benutzer mit nicht standardmäßigen Verhalten zu überraschen.

Dass Sie dies versuchen, legt nahe, dass eine andere Architektur für Ihre Anwendung angemessener sein könnte. Wenn Sie es wirklich so machen müssen, vergewissern Sie sich, dass Sie verstehen: die Gründe, warum dies im Allgemeinen nicht gemacht wird; die Implikationen, dies zu tun; Was sind die Alternativen? und warum die Alternativen nicht geeignet sind.

    
Matt Lacey 15.05.2011 17:15
quelle

Tags und Links