Button.Margin.All = 1; funkt nicht ?! Hä?

Reticent

Erfahrenes Mitglied
Hallo lieber Zusammen,


Ich füge dynamisch (at run time) mehrere Buttons dem TableLayoutPanel hinzu. Jetzt wollte ich die Abstände jedes mal auch anpassen. Nur wenn ich
Code:
            Button b = new Button();
            b.Margin.All = 1;
mache, schreit der VS2005 "Fehler 1 Der Rückgabewert "System.Windows.Forms.Control.Margin" kann nicht geändert werden, da er keine Variable ist."

Wie? Kann man den Margin nicht verändern. In der Beschreibung steht aber, dass Margin "Ruft den Zwischenraum ... ab oder legt diesen fest". Wie soll ich das verstehen? Kann mich jemand bitte aufklären.


Danke schon mal für's Reinschauen.
 
Margin ist ein Property. Dieses Property erwartet den Typ Padding. Siehe den entsprechenden Eintrag in der MSDN (suche nach Control.Margin).
Code:
Padding p = new Padding(1);
myButton.Padding = p;
oder eben
Code:
myButton.Padding = new Padding(1);
 
Nur der Vollständigkeit halber: Es funktionieren beide Varianten: Der Code-Formatierer hat nur anscheinend ein Leerzeichen nach dem new entfernt.

PS: Auch bei kurzen Meldungen bitte auf die Groß- und Kleinschreibung achten. Danke.
 
Zurück