[英]How to set the default value of Colors in a custom control in Winforms?
[英]WinForms Custom Control Colors
我试图自定义我的WinForms数据库应用程序上的控件。
到目前为止,我只尝试使用以下代码自定义标签和按钮:
namespace MyNamespace
{
public class CMSLabel : Label
{
private Color cmsLabelBackColor = aSystem.LabelBackColor;
public CMSLabel()
{
this.BackColor = cmsLabelBackColor;
}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public new Color BackColor
{
get { return cmsLabelBackColor; }
set { }
}
}
public class CMSButton : Button
{
private Color cmsButtonColor = aSystem.ButtonColor;
public CMSButton()
{
base.BackColor = cmsButtonColor;
}
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public new Color BackColor
{
get { return cmsButtonColor; }
set { }
}
}
}
Button控件工作正常,但Label控件根本没有显示BackColor,但我为每种控件类型使用了相同的代码。 谁能发现我做错了什么?
你必须改变“基础”颜色:
public CMSLabel()
{
base.BackColor = cmsLabelBackColor;
}
在CMSButton中设置基础 .BackColor,但在CMSLabel中设置此 .BackColor,它在setter中没有代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.