如何设置用户控件属性的初始值?

Joh*_*res 8 c# user-controls initialization properties

我正在创建一个自定义用户控件,我想知道如何在设计时设置属性的初始值?我有一个名为Alignment的属性,它有4个枚举值TopRight,TopLeft,BottomRight和BottomLeft.因此,当用户将用户控件放到Form上时,我希望该属性的初始值始终为BottomRight.我怎样才能做到这一点?

Jef*_*ata 8

您应该在用户控件的构造函数中设置初始值,或者在为属性声明支持变量时.

DefaultValue属性未设置初始值.如文档中所述,您需要在代码中设置初始值; 设计器将使用该DefaultValue属性来确定是否生成用于设置属性的代码.


pin*_*x33 5

设置属性的属性

[DefaultValue(typeof(AlignmentType), "BottomRight")]
public AlignmentType Alignment {

}
Run Code Online (Sandbox Code Playgroud)

编辑:实际上,上面的内容只是帮助设计者确定是否需要在初始化代码中以其他方式指定属性。

考虑到这一点,您只需使用构造函数来设置默认值,或者使用变量声明来设置默认值。

  • `DefaultValue` 属性不设置初始值。 (3认同)