7
votes

Est-il possible de montrer une barre d'application pour un seul article de pivotement?

Dans une application Windows Phone 7, j'utilise un pivot pour UI. Comme l'un des éléments du pivot une page xaml est inséré, comme suit: xxx

une barre d'application - un modèle standard - est utilisé dans cette page uniquement, car tout le pivot n'a pas besoin ce. Mais cela ne fonctionne pas. Pour l'instant, je ne pouvais désormais activer la barre pour chaque élément de pivot ou pour l'utiliser pour une page non pivotement distincte.


0 commentaires

4 Réponses :


13
votes

autant que je sache - bar d'application code> associé à votre page code>, mais pivot code> est juste un contrôle de votre page code>. Donc, Barre d'application code> est attribué à l'ensemble de la page code> quel que soit l'onglet pivot code> est affiché.

Vous pouvez le faire en définissant différentes barres d'applications. Dans la section Ressources: P>

private void MainPagePivot_SelectionChanged(object sender, SelectionChangedEventArgs e) 
{
    string pivotResource;

    switch (_mainPagePivot.SelectedIndex)
    {
        case 0:
            pivotResource = "firstPivotTabApplicationBar";
            break;

        case 1:
            pivotResource = "secondPivotTabApplicationBar";
            break;

        default:
            throw new ArgumentOutOfRangeException();
    }

    ApplicationBar = (ApplicationBar)Resources[pivotResource]; 
} 


0 commentaires

11
votes

Le moyen le plus simple de le faire est simplement de gérer le pivot ChargementPivoTem événement.

Attribuer que pivoTem a Nom: xxx

dans le code: xxx


0 commentaires

2
votes

S'il est possible de charger la barre d'application uniquement lorsqu'un pivotitem spécifique est affiché, il s'agit d'un comportement non standard. En règle générale, il n'est généralement pas bon de surprendre l'utilisateur avec un comportement non standard.

Que vous essayez de faire cela suggère qu'une architecture différente pour votre demande peut être plus appropriée. Si vous devez vraiment le faire de cette façon, assurez-vous de bien comprendre: les raisons pour lesquelles cela n'est généralement pas terminé; les implications de le faire; quelles sont les alternatives; et pourquoi les alternatives ne sont pas appropriées.


2 commentaires

Ce n'est plus le cas dans WP 7.5. Plusieurs des applications intégrées montrent désormais une barre d'application dans un pivot, puis la cache-t-elle dans une autre. Regardez le hub des gens pour un exemple. Le nouveau pivot masque le bar de l'application. Mais quand sur les gens + et la recherche sont visibles.


@Jason short tu as raison, à un point. Le comportement de certaines applications indigènes a changé dans la mangue. Toutefois, l'AppBar n'est jamais masquée, mais elle est remplacée par un état minimisé lorsqu'il n'y a pas de boutons pertinents pour le contenu d'un seul élément.



3
votes

Essayez ceci ... Ajoutez la fonction suivante à votre fichier XAML.CS de PivotPage et assurez-vous que vous ajoutez l'événement sélectionné à utiliser cette fonction ...

private void Pivot_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    switch (((Pivot)sender).SelectedIndex)
        {
            case 0:
                ApplicationBar.IsVisible = true;
                break;

            case 1:
                ApplicationBar.IsVisible = false;
                break;
    }
}


0 commentaires