Lorsque j'ouvre un formulaire dans Visual Studio 2005 (C#), le concepteur redimensionne automatiquement le formulaire et déplace/redimensionne les contrôles sans toucher le concepteur du tout. Le fichier source est modifié et lorsque je ferme le concepteur, je suis invité à enregistrer le fichier * .cs. J'ai essayé de regarder dans les options de studio visuel sans aucun succès. des idées? configuration de studio visuel ou quelque chose? merci, Talvisual designer 2005 déplace les contrôles et redimensionne le formulaire
Répondre
J'ai trouvé un travail.
Je ne sais pas ce qui se passe derrière mais j'ai changé mes propriétés d'affichage. et ça marche bien. voici la séquence: display propertis-> paramètres onglet-> avance. dans le dialogue avancé j'ai changé le "DPI Settings" de Grand (120 dpi) à Normal (96 dpi)
Ceci est celui que vous devriez vivre avec. Même dans VS2008 de telles choses arrivent de temps en temps. Cela dépend principalement du contenu du formulaire (contrôles, positions, etc.), et il n'y a pas d'option dans VS pour désactiver un tel comportement. Lorsque vous ouvrez votre formulaire dans le concepteur, vs runtime reconstruit l'apparence visuelle à partir du code derrière. Et parfois, il a fait des changements en ce moment. De même, lorsque vous ajoutez simplement un contrôle à un formulaire, le concepteur reconstruit entièrement les fichiers codebehind et les fichiers de ressources. C'est un problème bien connu, et il semble que MS ne le résoudra pas, car ils évoluent dans la direction de WPF.
donc plusieurs points pour vous simplifier la vie:
- Déplacer vers VS2008, concepteur était plus cohérent, mais encore les contrôles dans brouillent .designer.cs fichier
- Placez votre code dans l'un des référentiels source, donc si vous avez sauvé accidentellement un tel formulaire, vous pouvez le restaurer à partir du référentiel.
J'ai travaillé sur ce problème pour la plupart d'aujourd'hui et j'ai trouvé des choses intéressantes: La source principale de la le problème semble s'appuyer sur l'ancrage. Si j'utilise l'ancrage pour positionner mes contrôles, au lieu d'ancrer, mes problèmes semblent disparaître. J'ai trouvé quelques articles de blog datant de 2003 (!), Qui détaillent comment vous pourriez utiliser l'ancrage au lieu d'ancrer, et expliquent comment l'ancrage peut casser le concepteur de Windows Forms. Il semble que ce problème pourrait avoir plus de 7 ans!
Voici les messages:
Les contrôles dans ma forme étaient constamment biaisés par le concepteur - le problème existe toujours dans VS 2012. Passer à l'amarrage semble l'avoir arrêté. – pettys
Ugh, encore un problème dans VS2013, merci pour cela, il a vraiment aidé. – heisenberg
Cela est dû à AutoScaleMode
-property. Vos formulaires ont probablement été conçus avec des paramètres DPI ou Police différents de ceux que vous avez maintenant dans les paramètres d'affichage Windows. AutoScaleMode
-property a 4 différentes valeurs possibles: Dpi
, Font
, Inherit
ou None
. En mode Dpi
ou Font
, vos formulaires et contrôles seront automatiquement redimensionnés en fonction des paramètres d'affichage de Windows.
Ainsi, définissez la propriété AutoScaleMode
sur None
dans tous vos formulaires et contrôles et ils ne seront plus automatiquement redimensionnés. Essayez de concevoir vos formulaires afin de laisser suffisamment d'espace dans chaque contrôle pour que le texte puisse tenir, même si la taille du texte est fixée à 125%.
Semble l'avoir fait pour moi. J'ai dû éditer le * Form.Designer.cs pour changer ceci.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None; , et supprimez this.AutoScaleDimensions = new System.Drawing.SizeF (6F, 13F); (les deux lignes sont ensemble dans le fichier .Designer.cs) – Jimmy
Régler le format Min et Max paramètres de taille à la taille actuelle a été un bon travail pour moi. Cela a empêché VS de le redimensionner.
Avait le même problème avec les contrôles ancrés haut, gauche et droite dans TabControls complexes. Le concepteur de formulaires de studio visuel augmentait la largeur de tous les contrôles imbriqués chaque fois que j'ouvrais le formulaire.
J'ai trouvé une solution de contournement simple grâce à this post. J'ai simplement ajouté un panneau à chaque onglet et défini leur propriété de quai à remplir. Tous les contrôles existants dans les onglets ont été déplacés à l'intérieur de ces panneaux. Cela fonctionne, même si les contrôles sont ancrés en haut, à gauche et à droite.
Works au moins pour Visual Studio 2013 et 2015.
J'ai eu ce problème aussi. Chaque fois que j'ai ouvert le concepteur, chaque boîte avec l'ancre "droite" a été déplacée d'environ 20 pixels vers la gauche. De plus, le bas de chaque case avec l'ancre "left" était d'environ 200 pixels en dehors du formulaire.
Cette forme a beaucoup de contrôles et ne devrait pas rétrécir sur les plus petits écrans, donc elle a été placée à autoscroll, le formulaire lui-même était plus petit dans le concepteur que la taille minimum montrée (historiquement ...). Je viens de définir la taille à la taille minimale afin qu'aucune barre de défilement n'apparaisse dans le concepteur et les ancres ont fonctionné comme prévu sans visser les postitions.
J'ai lu le premier message de la réponse de ryantm qui m'a conduit à la solution. Apparemment, il a quelque chose à voir avec la commande. Net exécute des événements tels que la définition de la taille d'un formulaire.
J'avais une forme triviale avec peu de contrôles, où OK et Annuler en bas étaient décalés dès que le formulaire a été ouvert dans le concepteur VS2013. Le même comportement a été observé dans VS2015.
La réponse acceptée de DPI n'a pas résolu le problème pour moi, et il n'y avait aucun problème sur la taille de la forme/du remplissage/des marges.
La suppression des contrôles qui sont décalés et les ajouter de nouveau dans la forme résolu le problème pour moi, comme suggéré par ptutt ici: Visual Studio designer moving controls and adding grid columns when form is opened
Même si je comprends la suggestion de ryantum et des liens d'utilisation docking [panneaux], comme mentionné également dans le lien ci-dessus avec le blog de Roland poster https://weblogs.asp.net/rweigelt/28984, avec quelque chose de si trivial je préfère juste le faire disparaître avec suppression/ajout.
J'ai trouvé le verrouillage des contrôles du menu de format était un solution simple et efficace. VS2013
J'ai eu ce problème avec VS 2015. J'ai utilisé des panneaux de quai avec les contrôles qui se déplaçaient de façon inattendue comme leurs enfants. Par défaut, les contrôles seront alignés sur la gauche, mais vous pouvez changer l'orientation. Mes boutons ont cessé de bouger.
- 1. page Designer ne rafraîchie lorsque les contrôles sont déposés sur le formulaire
- 2. OnMouseEnter pour tous les contrôles d'un formulaire
- 3. Actualiser tous les contrôles sur le formulaire
- 4. C#: Déplacer les contrôles du formulaire vers tabPage dans VS Form Designer
- 5. Concepteur WinForm et snapline à droite pour les contrôles dans le conteneur lors du redimensionnement
- 6. Bonne façon de déboguer les erreurs Visual Studio Designer
- 7. Form.Show() déplace légèrement la position du formulaire
- 8. Comment ajouter des contrôles Silverlight dans Visual Studio 2005
- 9. VS 2005 Impossible d'ouvrir le schéma DataSet en mode Designer
- 10. VS.NET Outil pour nommer tous les contrôles sur le formulaire
- 11. conflit Alias et espace de noms dans Designer Visual Studio
- 12. éléments Cacher WPF dans Visual Designer Studio
- 13. WindowsForms Designer et GenericForm
- 14. Comment empêcher VS designer de mettre à jour les valeurs localisées des contrôles?
- 15. Visual Studio 2005 et SQL Express 2008
- 16. Visual Studio 2008 et SQL Server 2005
- 17. Comment mettre à jour les contrôles ActiveX dans un projet C# dans Visual Studio 2005
- 18. Visual Studio 2008 SP1 et Visual SourceSafe 2005
- 19. Afficher Control.Text dans VisualStudio Designer
- 20. table entière Hiding redimensionne
- 21. Visual Studio 2005 Raccourcis
- 22. Visual Basic 2005 + mysql
- 23. Designer pour voir les internes?
- 24. visual basic 2005 & mySQL
- 25. Gestion d'un clic pour tous les contrôles d'un formulaire
- 26. .NET Listview Control Visual Studio 2005
- 27. Contrôles de validation pour les formulaires Windows?
- 28. Crystal Cached signale les contrôles sur Toolbox dans VS 2005 et VS 2008
- 29. Formulaire Visual Basic 6
- 30. Quel est le but des contrôles utilisateur dans Visual C#?
c'est horrible que le concepteur IDE est affecté par votre écran DPI . Désolé d'entendre ça. :( –
Parmi les nombreuses horreurs perpétuées par Windows, les «paramètres DPI» est l'un des pires.Ce paramètre provoque plus de problèmes avec plus d'applications que presque tout ce que j'ai vu. – Stewbob