Existe-t-il un moyen facile de définir le niveau de zoom pour un formulaire Windows en C#? Dans VBA il y avait une propriété zoom du formulaire.Zoom pour un formulaire Windows en C#
Répondre
Il n'y a aucun moyen (que je sache) de faire ce que vous demandez avec WinForms typique. Si vous faites du dessin/dessin personnalisé, vous pouvez zoomer en utilisant une transformation de zoom, mais pour autant que je sache, il n'y a pas de propriété "Zoom" pour le formulaire dans le monde entier de .NET et Windows natif/API C++ combinées.
Vous pourriez probablement gréer quelque chose vous-même de telle sorte que vous ajustez les contrôles par un facteur constant. Et vous pouvez probablement trouver des contrôles/surfaces tiers qui supportent cela. Et qui sait ce qui est possible avec WPF. Mais dans un monde typique WinForms, non.
Voici la méthode: http://msdn.microsoft.com/en-us/library/system.windows.forms.control.scale.aspx. Bien sûr, vous devez garder une trace de la taille des contrôles d'origine car après avoir mis à l'échelle les contrôles, leur valeur mise à l'échelle est approchée d'une valeur entière (ainsi, l'opération de zoom avant peut entraîner des tailles d'originaux incorrectes). – Luca
Dommage que cette réponse ait été marquée comme correcte puisque celle de Fabrizio a fonctionné – Chopchop
@ChopChop En toute justice, j'ai dit "Vous pourriez probablement truquer quelque chose vous-même de sorte que vous ajustez les contrôles par un facteur constant". La question initiale a demandé s'il y avait une manière EASY (semblable au niveau de Zoom sur le formulaire VB) pour mettre à l'échelle un formulaire dans C#/WinForms par rapport à la route de bricolage. –
J'ai eu le même problème et je l'ai résolu de cette façon en C#. Code en cours de chargement Formulaire de charge
float scaleX = ((float)Screen.PrimaryScreen.WorkingArea.Width/1024);
float scaleY = ((float)Screen.PrimaryScreen.WorkingArea.Height/768);
SizeF aSf = new SizeF(scaleX, scaleY);
this.Scale(aSf);
Cette échelle "plus ou moins" forme tous les enfants. Boucles pour toujours en 800x600 Vous devez définir les propriétés de formulaire ci-dessous (?):
AutoscaleMode = Font
AutoSize = False
Vous pouvez obtenir une sorte de zoom en attribuant des police au formulaire, tous les contrôles seront zoomées en conséquence si AutoScaleMode défini sur Police. En outre, les paramètres AutoSize sur Faux conservent la taille du formulaire, les contrôles atteignent le centre du formulaire. Vous devez configurer correctement toutes les ancres et tester le look, car c'est juste un "type de zoom".
Donc, fondamentalement, voici constructeur exemple:
public Form1()
{
InitializeComponent();
AutoSize = false;
AutoScaleMode = AutoScaleMode.Font;
Font = new Font("Trebuchet MS",
10.0f,
FontStyle.Regular,
GraphicsUnit.Point,
((byte)(204))
);
}
Après formulaire a été montré l'attribution nouveau mess volonté de police toutes les commandes et cette astuce ne fonctionnera pas.
- 1. Zoom sur un PictureBox (Windows Mobile)
- 2. .NET: Comment convertir un formulaire Windows en un contrôle Windows
- 3. Commande de zoom à WPF Formulaire
- 4. Zoom sur un point dans C#
- 5. zoom sur mesure pour mettre en œuvre un UIScrollView
- 6. Redirection vers un autre formulaire dans l'application Windows C#
- 7. Propagation d'événements d'un formulaire à un autre Formulaire en C#
- 8. Rendre un formulaire Windows existant héritable
- 9. Windows formulaire de demande
- 10. Rotation de formulaire Windows
- 11. Comment faire un formulaire Windows à venir dans l'application Windows fait dans C#?
- 12. Comment faire pour modal système de formulaire en utilisant C#?
- 13. Générique pour remplir un formulaire en javascript
- 14. Remplir un formulaire avec C#
- 15. Windows Terminal - Windows Formulaire à intégrer cmd
- 16. Mise en réseau avec C/C++ dans un environnement Windows
- 17. Client Memcached pour Windows en C ou C++?
- 18. Formulaire C# dans un programme C++
- 19. UIButtons sur un UIImageView Zoom
- 20. Comment enregistrer le formulaire pour WM_DEVICECHANGE message dans Windows Mobile
- 21. Problèmes lors de la fermeture d'un formulaire Windows C#
- 22. Masquage d'un formulaire de l'utilisateur dans l'application C# windows
- 23. Appel d'une méthode sur un autre formulaire en C#
- 24. Gestion des événements pour un formulaire hérité
- 25. Pour afficher un nouveau formulaire sur un clic d'un bouton en C#
- 26. subsonique et un contrôle DateTimePicker sur un formulaire Windows
- 27. Animation d'opacité de formulaire en C# avec un BackgroundWorker
- 28. C#: diviser une classe en plusieurs fichiers (avec un formulaire)
- 29. zoom Excel 2007 in zoom out
- 30. Comment joindre une vidéo dans mon formulaire C# WIndows?
Pouvez-vous spécifier quel type de formulaire? Parlons-nous des formulaires Web et des tailles d'encodage de texte? –