【问题标题】:How can I set a StackPanels margins individually?如何单独设置 StackPanels 边距?
【发布时间】:2010-11-14 17:34:48
【问题描述】:

我可以像这样在代码隐藏中设置堆栈面板的边距:

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

但是我怎样才能单独设置每个,这两个都不起作用:

伪代码:

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

【问题讨论】:

    标签: c# wpf margin code-behind stackpanel


    【解决方案1】:

    你也可以试试这个:

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

    【讨论】:

      【解决方案2】:

      Margin 的类型是厚度,它是一个结构。

      “5 0 0 0”的解析是 XAML 的事情,不是厚度构造函数处理的事情。

      使用

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

      因为厚度是一个结构,它也应该起作用,而其他边距值保持不变:-

      sp2.Margin.Left = 5;
      

      【讨论】:

      • 你的最后一行真的没有修改其余的吗? This Answer 另有声明
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-13
      相关资源
      最近更新 更多