Laden...

[erledigt] Größe des Forms anhand eines Controls bestimmen

Letzter Beitrag vor 19 Jahren 3 Posts 1.196 Views
[erledigt] Größe des Forms anhand eines Controls bestimmen

Ich habe ein Form, zu dem ein UserControl hinzugefügt ist. Dock hab ich auf Fill gesetzt. Es kann nun vorkommen, dass das UserControl (eigene abgeleitete Klasse) die Fenstergröße verändern will. Das soll nun in der Methode Rebuild geschehen. Mein bisheriger Ansatz war der, dass ich zu der gewünschten Höhe die Diffenernz aus Size.Height und ClientSize.Height addiere (analog für die breite):

void Rebuild()
{
jf.Size = new Size (model.Width * 15 + jf.Size.Width - jf.ClientSize.Width, model.Height * 15 + jf.Size.Height - jf.ClientSize.Height);
Refresh();
}

jf is das Form und model.Width * 15 auf model.Height * 15 die Größe, die das UserControl erhalten soll. Mit obiger Methode wird das Fenster allerdings etwas (geschätzt 25-30px) zu niedrig. Kann das an dem Menu liegen, das dem Form hinzugefügt ist? Oder geht das ganz anders einfacher (So wie z.B. in Java mit nem LayoutManager und Container.pack())? Oder was is falsch 😉 ?

Wir leben zwar alle unter demselben Himmel, haben aber deswegen lange noch nicht alle denselben Horizont.

Setze doch den ClientSize statt Size neu !

Früher war ich unentschlossen, heute bin ich mir da nicht mehr so sicher...

Grml so simpel, da gibts nen set 😁 Und damit schlag ich mich jetzt schon ne ganze Zeit rum 😉
Na ja, Danke auf jeden Fall 👍.

Wir leben zwar alle unter demselben Himmel, haben aber deswegen lange noch nicht alle denselben Horizont.