2012-12-15 6 views
0

Je veux utiliser élément Popup dans windows phone (C#) pour afficher un message sur l'écranPopUp dans Windows Phone 7

je l'ai fait ce qui suit:

popUpBanner = new Popup(); 
popUpBanner.HorizontalAlignment = HorizontalAlignment.Center; 
popUpBanner.VerticalAlignment = VerticalAlignment.Center; 

Mais l'élément contextuel apparaît en haut à gauche de l'écran .. pas au centre

Comment puis-je résoudre ce

Répondre

0

Dans Windows Phone le pop up est pas une classe UserControl. Au lieu de centrer le popup, vous voulez centrer les éléments de l'interface utilisateur dans l'élément enfant du popup ...

0

Pour être plus précis, j'ai mis à jour mon code et j'espère qu'il vous sera utile. Tout d'abord permet obtenir la taille de l'écran (i.e.. Largeur & Hauteur)

permet de créer un StackPanel, ajoutant de la couleur d'arrière-plan et re-dimensionnement de la StackPanel selon la résolution de l'écran de l'appareil.

StackPanel stackPanel = new StackPanel(); 
stackPanel.Background = new SolidColorBrush(Colors.Gray); 
stackPanel.Height = height/4; 
stackPanel.Width = width/2; 

Enfin créer un popup et l'ajouter comme un enfant au StackPanel.

Popup Popup1 = new Popup(); 
stackPanel.Children.Add(Popup1); 
ContentPanel.Children.Add(stackPanel); 
Popup1.IsOpen = true; 

Vous avez terminé. Modifiez la taille de votre StackPanel en fonction de vos besoins, puisque vous avez la résolution d'écran ici.

+0

La question concerne le centrage, pas le réglage du décalage qui ne sera pas suffisant pour gérer toute la résolution de l'écran –

+0

Je viens de mettre à jour mon code. Le réglage du décalage apporte le centre Popup et c'est ce que l'utilisateur veut. –

+0

OK pour le réglage au centre en utilisant le décalage, mais peut-être que vous devriez l'aider à obtenir la largeur totale? –