10
votes

Équivalent du pack de swing en C #

Je développe une application rapide en C #. Une chose que je veux faire est l'équivalent de Swing (Java) pack () . C'est un appel qui me permet de dire à une forme (cadre en Java), redimensionnez-vous à la taille de la somme des composants en vous-même.

J'ai recherché et recherché (les composants changent de manière dynamique afin que je ne puisse pas simplement coder le formulaire à la bonne taille), mais je ne trouve pas la méthode équivalente en C #.

Est-ce que quelqu'un sait ce qu'on appelle?


0 commentaires

3 Réponses :


11
votes

Vous n'avez même pas besoin de code d'écriture afin de "emballer" le formulaire. Dans le concepteur de formes, définissez la propriété autosize de formulaire sur true , puis définissez la propriété autosizemode sur GROWANDSHRINK , répéter ceci pour tout contrôle sur la forme qui peut également changer de taille.

et voila!

au moment de l'exécution (uniquement), le formulaire se redressera de manière dynamique pour accueillir toutes les commandes. Si vous voulez qu'il conserve une petite distance des commandes de sorte que les commandes ne «collent» sur les bords, vous pouvez définir la propriété Rembourrage (je recommanderais au moins une valeur de 12 , 12,12,12).


1 commentaires

Lorsque vous définissez automatiquement sur les commandes telles que les étiquettes, vous souhaitez probablement définir la propriété MAXIMUMWIDTH pour forcer le texte à envelopper, empêchant ainsi les longues lignes de rendre votre formulaire plus large que l'écran.



3
votes

aussi dans xaml: xxx


0 commentaires

0
votes

Une autre solution disponible uniquement si l'image est inférieure à l'écran:

Form frm = new Form();
PictureBox pbx = new PictureBox();
pbx.Image = Image.FromFile( _imagePath.Text );
pbx.Dock  = DockStyle.Fill;
frm.Controls.Add( pbx );
frm.Size = pbx.Image.Size;
frm.Show();


0 commentaires