设置填充 - 为什么说padding.all不可变?

时间:2009-11-26 08:06:06

标签: c# winforms variables padding

我不明白为什么有Control.padding.all这是int并且根据提示有set和get但我无法设置它(Control.Padding.All = 5)?我很感激解释。谢谢!

2 个答案:

答案 0 :(得分:4)

Control.Margin = new Padding(5)

答案 1 :(得分:1)

这是

的简单实现
public class ARAControl
{
    public ARAPadding Padding { get; set; }
}
public struct ARAPadding

{
    public int All { get; set; }
}

如果你使用它,你可能会收到此错误

        ARAControl control = new ARAControl();
        control.Padding.All = 10;

因为结构是一种价值类型而烦恼。通过设置此属性,您首先调用get Method。属性Get将返回Padding的副本,因此它是一个值类型,C#将检测出错误并阻止编译