Ich habe mehrere Stapelüberlauf Fragen gelesen, ohne eine gute funktionierende Lösung für mein Problem zu finden. Wie kann ich die Größe meiner Steuerelemente ändern, wenn die Größe des Formulars geändert wird? Ich möchte, dass sie größer oder kleiner werden, wenn die Form größer oder kleiner wird.Größe ändern Kontrollen mit Formulargröße ändern
In Visual Basic war dies ziemlich einfach mit der form.Zoom-Eigenschaft (die eigentlich keine Größenanpassung erfordert, aber gelöst, was ich brauchte). Leider ist dies in C# winforms nicht verfügbar.
Hier ist einige andere Dinge, die ich ohne Glück versucht:
private void formMain_Resize(object sender, EventArgs e)
{/*
double scale;
this.scaleWidth = (float)this.Width/(float)this.origWidth;
this.scaleHeight = (float)this.Height/(float)this.origHeight;
if (this.scaleHeight > this.scaleWidth)
{
scale = this.scaleHeight;
}
else
{
scale = this.scaleWidth;
}
foreach (Control control in this.Controls)
{
control.Height = (int)(control.Height * this.scaleHeight);
control.Width = (int)(control.Width * this.scaleWidth);
this.Refresh();
// control.Font = new Font("Verdana", control.Font.SizeInPoints * heightRatio * widthRatio);
}
///////This scaling didnt work for me either
//this.Scale(new SizeF(this.scaleWidth, this.scaleHeight));
//this.Refresh();
*/
}
Wenn ich eine actualy Arbeits Probe von Code auf einer anderen Stack-Überlauf Frage übersehe ich es sehen würde lieben, aber die, die ich gefunden waren denen ähnlich, die nicht arbeiten.
Vielleicht habe ich es missbraucht und jemand könnte Beispielcode posten, um für diejenigen von uns zu zeigen, die diese Frage stellen, wie man das Problem löst.
Auch habe ich versucht, einige der Anker/Docking-Tools zu verwenden, die denken, sie würden es automatisch zulassen, aber es tat es nicht.
Sie haben Dock- und Ankereigenschaften verwendet ..... versuchen Sie sie besser zu verwenden .... sie sollten Ihr Schlüssel zum Erfolg sein, denke ich. Kann ich auch nach einem Screenshot Ihrer Benutzeroberfläche fragen? – Sandy