J'ai une application .Net winforms (C#) avec sa forme principale (forme A), et elle ouvre différentes autres formes comme non-modale (de sorte que l'utilisateur peut travailler sur le formulaire principal ou formes enfants indépendamment)Fenêtre d'un autre processus entre mes deux formes
Dans certains cas, la forme enfant (formulaire B) ouvre une autre forme contextuelle (forme C). Lorsque cette fenêtre est fermée, une autre fenêtre d'une autre application (par exemple, chrome, outlook, VS) se trouve entre mon formulaire principal et le formulaire enfant. Habituellement, cette autre fenêtre est celle qui se trouvait juste en dessous de ma fenêtre principale.
Avant la fermeture de la forme, l'ordre z est: Outlook, Forme A, Forme B, Forme C
Après forme de fermeture C, les modifications z afin de: Formule A, Outlook, forme B
Je ne voulais pas spécifiquement BringToFront() mon formulaire A, car il pourrait y avoir plusieurs instances de formulaire B à un moment donné, et je ne veux pas faire mon formulaire A sur le formulaire B.
Une idée de ce qui pourrait causer ce genre de comportement? Y at-il un moyen de s'assurer que tous les formulaires de ma demande sont au-dessus des autres fenêtres?
Et aussi cela a l'effet secondaire de, si j'ouvre une autre instance de la forme B, je ne peux pas accéder à l'instance de formulaire B précédente. J'ai besoin d'avoir accès à tous les formulaires à tout moment :( – Anuruddha
@Anuruddha, rien dans cette page ne vous empêche d'accéder aux instances précédentes.Le seul inconvénient est que la fenêtre propriétaire (FormA dans ce cas) ne peut pas couvrir une fenêtre propriétaire Un bon résumé de la relation Windows propriétaire-propriétaire est présenté [ici] (https://msdn.microsoft.com/en-us/library/system.windows.window.owner%28v=vs.110%29.aspx ? f = 255 & MSPPError = -2147217396 # Remarques); its pour la fenêtre WPF, mais la liste est également applicable aux fenêtres WinForm. – TnTinMn