Edward Tanguay
Edward Tanguay

Reputation: 193462

How can I set a StackPanels margins individually?

I can set the margin of a stackpanel in code-behind like this:

StackPanel sp2 = new StackPanel();
sp2.Margin = new System.Windows.Thickness(5);

But how can I set each individually, both of these don't work:

PSEUDO-CODE:

sp2.Margin = new System.Windows.Thickness("5 0 0 0");
sp2.Margin.Left = new System.Windows.Thickness(5);

Upvotes: 2

Views: 8756

Answers (2)

AnthonyWJones
AnthonyWJones

Reputation: 189555

Margin is of type Thickness which is a structure.

The parsing of "5 0 0 0" is a XAML thing, its not something that Thickness constructor handles.

Use

sp2.Margin = new System.Windows.Thickness(5,0,0,0);

since Thickness is a structure this should also work, leaving the other margin values unmodified:-

sp2.Margin.Left = 5;

Upvotes: 6

Arcturus
Arcturus

Reputation: 27065

You can also try this:

sp2.Margin = new System.Windows.Thickness{ Left = 5 };

Upvotes: 9

Related Questions