2009-10-07 7 views
2

J'ai une application qui, en raison de problèmes d'espace aérien OpenGL, doit héberger plusieurs contrôles dans des fenêtres séparées et exclusives. Cela fonctionne plutôt bien, mais je mets toutes les fenêtres à TopMost = true, ce qui signifie qu'elles restent affichées même lorsqu'elles perdent leur focus, mais elles recouvrent également d'autres applications. De plus, cela me permet de n'utiliser qu'une seule fenêtre à la fois pour cela. Activate() ne fonctionne pas non plus.Besoin de contrôler "Z Order" des fenêtres dans WPF Application

Répondre

0

Je combine les méthodes Activate() et Focus() pour afficher une fenêtre masquée. Pouvez-vous essayer d'utiliser Focus() et nous dire si cela fonctionne?

2

J'ai trouvé que régler les propriétaires des fenêtres sur la fenêtre principale de l'application leur permettait de toujours flotter sur le dessus.

A l'intérieur du contrôle qui médiatise le contenu et la mesure de la fenêtre enfant:

InnerWindow.Owner = Window.GetWindow(this); 

this étant le windowHostControl hébergement de cette fenêtre.

+0

Qu'est-ce qui ne va pas avec InnerWindow.Owner = this; –

Questions connexes