一个自定义属性的问题,帮忙解答一下,谢谢
建立一个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();