读书人

一个自定义属性的有关问题帮忙解答一

发布时间: 2012-11-19 10:18:51 作者: rapoo

一个自定义属性的问题,帮忙解答一下,谢谢
建立一个CUSTOM CONTROL,代码如下:
public partial class save : Button
{
public save()
{
InitializeComponent();

}
public enum MyEnum
{
条形图, 曲线
}

private MyEnum _Caption;
[CategoryAttribute("自定义属性"),
DescriptionAttribute("标题"),
DefaultValue("曲线")]

public MyEnum Caption
{
set {
if (value.ToString() == "条形图")
{
this.Text = "条形图";
}
if (value.ToString() == "曲线")
{
this.Text = "曲线";
}
_Caption = value; }
get {
return _Caption; }
}

要求实现的功能是,在WINFORM设计时,这个按钮的Caption属性如果选择了“条形图”,那么button的Text属性更改为条形图,当设置曲线的时候,更改button的Text属性为曲线。上面代码我测试过,可以实现我的功能,但是这种写法是否符合标准。在网上找了很久都没找到,另外value这个枚举类型,我直接通过ToString()转换应该没有问题吧。不好意思,刚搞这个,不太懂。帮忙解答,谢谢

[解决办法]
上面的有点小错误,应该是 ==

一般判断枚举是这样

if(value==MyEnum.条形图)
this.Text="条形图";
else if(value==MyEnum.曲线)
this.Text="曲线";

但你这个可以直接
this.Text=value.ToString();

读书人网 >C#

热点推荐