Zentrierung von Controls

08/03/2008 - 07:28 von Werner Perplies | Report spam
Hi,

ich raffe es einfach nicht:

Ich möchte zum Beispiel zwei Controls im festen Abstand zueinander bei
Größenànderung des Fensters im Fenster zentrieren.

Früher (Visual Objects) musste ich die Position im Resize-Event des
Fensters selbst berechnen.

Ich hatte erwartet, dass das mit C# und Visual Studio nicht mehr notwendig
wàre.

Mit Anchor kann ich zwar Controls an einer Seite des Fensters ausrichten,
ein Control auch durchaus entweder vertikal oder horizontal zentrieren,
aber mehr Möglichkeiten finde ich nicht:

Wobei sich mir auch bei den ausprobierten Möglichkeiten die Logik nicht
erschließt.

Waagerechte Zentrierung von Controls:
form.control.Anchor = AnchorStyles.Top. | AnchorStyles.Bottom;

Senkrechte Zentrierung von Controls:
form.control.Anchor = AnchorStyles.Left. | AnchorStyles.Right;

Jetzt würde ich denken, dass Folgendes mindestens für _ein_ Control
funktionieren würde, oder?
form.control.Anchor = AnchorStyles.Top. | AnchorStyles.Bottom |
AnchorStyles.Top. | AnchorStyles.Bottom;

Dies Control bleibt auf seiner Position festgenagelt.

Gibt es eine fertige Lösung, oder muss ich die Positionen nach wie vor
selbst berechnen?

Schon mal vielen Dank für Tipps.


Werner
www.weepee.eu
 

Lesen sie die antworten

#1 Frank Dzaebel
08/03/2008 - 08:12 | Warnen spam
Hallo Werner,

Ich möchte zum Beispiel zwei Controls im festen Abstand
zueinander bei Größenànderung des Fensters im Fenster zentrieren.



Ziehe einen Panel in die Form, platziere Deine beiden
Controls mit dem festen Abstand darin, markiere den Panel,
stelle seine Anchor-Eigenschaft auf None, dann [Strg-X], [Strg-V].


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen