【发布时间】:2016-08-11 11:16:53
【问题描述】:
我想在设计时为可浏览的 Windows 窗体创建一个自定义属性,但我的努力都没有成功。显而易见的解决方案似乎是将 browsable 属性设置为 true:
[Browsable(true),
EditorBrowsable(EditorBrowsableState.Always),
Description("Custom Border Colour"),
Category("Custom")]
public Color BorderColour
{
get
{
return bCol;
}
set
{
bCol = value;
}
}
但这不起作用。我已经为自定义控件做了很多次,它就像一个魅力,事实上,我什至不需要添加属性,因为默认值为 true。这篇codeproject 的文章似乎做我想做的,就是我上面描述的。 MSDN也是死路一条,还是不知道要找什么。
我尝试将代码添加到Form1.cs 和From1.Designer.cs,但没有任何效果。
我是否缺少某些东西,例如我需要为表单设置的某些属性以允许这样做,或者这是不可能的?
我正在使用 Visual Studio Express 2013,如果这会以任何方式影响结果。
编辑:Reza 回答后的尝试:根据 Reza 的建议,this question 提出了有关此主题的更详细问题。
【问题讨论】:
-
编辑答案: 设计师编辑您文件中的第一个类(正如我在第一个链接帖子中提到的)。您已将
BaseForm作为第一类放在.cs文件中。将其放在单独的文件中或将BaseForm的代码移到Form1代码之后。 -
一般情况下最好将
BaseForm的代码分开,所以最好在项目中添加新表单并将其命名为BaseForm并为表单添加辅助属性,然后为其他表单,添加Inherited Form或添加新的Form并手动更改基类名称。
标签: c# winforms properties attributes windows-forms-designer