Autor Beitrag
MK2291
Hält's aus hier
Beiträge: 12



BeitragVerfasst: Mi 28.01.15 13:11 
Hallo Leute,

habe wieder ein kleines Problem und zwar. Ich erstelle einen Button:
ausblenden C#-Quelltext
1:
2:
Button button = new Button();
grid.Children.Add(button);


Jetzt würde ich aber gerne wissen wie ich es schaffe den Corner Radius hier im Code zu ändern.

Danke
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Mi 28.01.15 13:47 
Nur ein Border-Control hat direkt die Eigenschaft CornerRadius.
Du kannst dann deinen Button dort als Unterelement hinzufügen, s. z.B. button with rounded corners

Du kannst aber auch für einen Button ein eigenes ControlTemplate erzeugen, s. z.B.
Set CornerRadius on button template
how to create/make rounded corner buttons in WPF?
RoundedButton Button Style (WPF)

Für den Code-Behind mußt du dann halt die XAML-Syntax nach C# übersetzen. Aber warum benutzt du denn kein XAML?
MK2291 Threadstarter
Hält's aus hier
Beiträge: 12



BeitragVerfasst: Mi 28.01.15 15:01 
Ja nur leider weiß ich nicht wie ich das machen soll. Buttons die ich im wpf erzeuge und dann Corner Radius verändern soll ist kein Problem. Aber verstehe es nicht wie ich es bei einem Button mach der per code erzeugt wird und erst beim Programmstart in meinem Grid mit einer for schleife erzeugt wird. Und wenn ich das bei meinem Grid änder wird es ja trotzdem überschrieben und ich hab keine Runden ecken.

Aber trotzdem danke
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Mi 28.01.15 16:53 
Dann probiere mal:
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
Border border = new Border();
border.CornerRadius = new CornerRadius(15);
grid.Children.Add(border);

Button button = new Button();
border.Children.Add(button);


Trotzdem noch mal die Frage, warum du das Erzeugen von Controls per Code-Behind machst und nicht per XAML (ControlTemplate und MVVM)?

Für diesen Beitrag haben gedankt: MK2291
MK2291 Threadstarter
Hält's aus hier
Beiträge: 12



BeitragVerfasst: Mi 28.01.15 18:19 
Ja das Problem bei dem ganzen ist einfach mein Chef:) klappt leider nicht da er mir sagt border enthält kein Children :)
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4764
Erhaltene Danke: 1052

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Do 29.01.15 10:59 
Ich hoffe, du hast den Fehler im Code selber lösen können... ;-)

Falls nicht, dann hier die Lösung (laut MSDN Border Klasse):
ausblenden C#-Quelltext
1:
border.Child = button;					

Border ist von Decorator abgeleitet und hat immer nur genau ein Unterelement.

PS: Selbst ist der Chef :wink: