我在C#中使用多个自定义属性创建自定义Windows窗体控件。其中一个属性是一个带有几个整数字段的简单结构:
public struct Test
{
public int A, B;
}
Test _Test;
[Category("MyCategory")]
public Test TestProperty
{
get { return _Test; }
set { _Test = value; }
}
我希望Visual Studio设计器以与Size
,Margins
和其他类似Windows窗体结构相同的方式编辑结构的字段。我是否需要基于UITypeEditor
类实现自定义属性编辑器,或者.Net框架是否提供了一些常见的“结构编辑器”?
答案 0 :(得分:5)
这应该可以解决问题:
[TypeConverter(typeof(ExpandableObjectConverter))]
public struct Test
{
public int _A, _B;
public int B
{
get { return _B; }
set { _B = value; }
}
public int A
{
get { return _A; }
set { _A = value; }
}
}
Test _Test;
[Category("MyCategory")]
public Test TestProperty
{
get { return _Test; }
set { _Test = value; }
}
答案 1 :(得分:0)