2010-04-03 5 views
10

Je développe une application C# WinForms sur ma machine dev XP avec Visual C# Express 2008.A la différence de taille de forme entre XP et 7

Je mis la forme pour avoir une taille de mon goût avec largeur et la hauteur du concepteur et tout semble bien. Je définis également ces dimensions à la propriété MaximumSize.

Déploiement de l'application sur une autre machine XP, et l'application ressemble à mon application dev. Toutefois, lors du test de l'application sur une machine Win7, des barres de défilement horizontal et vertical sont appliquées au formulaire. Je suppose que cela est dû à la taille non-client modifiée du formulaire, tel que déterminé par Win7. Je peux redimensionner la fenêtre, mais j'aimerais qu'elle s'affiche correctement pour commencer. Donc, ma question est: Quelle est la meilleure façon de maintenir correctement une zone client de taille de formulaire à travers OS'es?

Merci à tous.

Répondre

11

Vous devez utiliser la propriété ClientSize - si vous le définissez dans le code, il ne changera pas entre OS'es.

De MSDN:

La zone client d'un contrôle est les limites du contrôle, moins les éléments non-clients, tels que des barres de défilement, les bordures, les barres de titre et les menus.

+1

Merci, je savais qu'il devait y avoir une réponse simple! – Andy