J'ai une application avec une forme principale qui agit comme une sorte de cadre et une zone à l'intérieur du formulaire principal où j'ouvre d'autres formes. Ces formulaires ne doivent pas être fermées jamais alors quand un nouveau est ouvert j'utilise ce code pour l'ouvrir pour la première fois:Form.Show() déplace légèrement la position du formulaire
frm.WindowState = FormWindowState.Maximized;
frm.BringToFront();
Et puis si une autre forme s'ouvre au-dessus de cela et je dois montrer Je viens d'utiliser à nouveau:
frm.Show();
le problème est quand j'ouvre la forme la première fois son positionnement parfaitement et les frontières alignent bien. Quand j'utilise frm.Show() pour le ramener, il le déplace légèrement vers la gauche et vers le bas. Toute idée pourquoi?
Donc, pour tous les 20 formes environ, je devrais enregistrer chaque emplacement et suivre? Ou y a-t-il un moyen de juste dire frm.Show() à cet endroit précis? – novacara
Vous pouvez suivre l'emplacement dans le code du formulaire enfant lui-même ... Encore mieux, si vous avez différents types de formulaire enfant, créez une classe MdiChild de base qui gère cela et en hérite –