PropertyGrid 如何实现复杂属性展开
比如:class A
{
string name;
int age;
public string Name
{
get { return name; }
set { name = value; }
} public int Age
{
get { return age; }
set { age = value; }
}
}class B
{
A myA; public A MyA
{
get{..}
set{..}
}
}B b = new B();
propertyGrid.SelectedObject = b;
PropertyGrid中只能出现:
MyA | 编辑框希望能将A属性展开:
MyA |
Name | 编辑框
Age | 编辑框如何才能实现?
比如:class A
{
string name;
int age;
public string Name
{
get { return name; }
set { name = value; }
} public int Age
{
get { return age; }
set { age = value; }
}
}class B
{
A myA; public A MyA
{
get{..}
set{..}
}
}B b = new B();
propertyGrid.SelectedObject = b;
PropertyGrid中只能出现:
MyA | 编辑框希望能将A属性展开:
MyA |
Name | 编辑框
Age | 编辑框如何才能实现?
解决方案 »
- 怎么实现usb设备的识别和驱动的自动安装并运行?
- XML和XSLT,会的帮下忙!急用!
- C#自定义控件效果怎么不能显示出来,如何让它显示在运行结果中
- Gridview Checkbox readonly 并且不改变背景色
- 初学者提问,老手可以做练手
- 请问C#有没有像asp那样的function函数啊
- C#中的引号问题!
- winform下datagrid显示问题
- 为什么button未完成Click事件里的函数功能,就不能响应MouseLeave事件?
- 执行当前 Web 请求期间,出现未处理的异常,help~~~~
- 为什么子窗体设为最大化,父窗体加载子窗体时,子窗体里面的东西向上移动了呢?
- 用c#window窗体,往FTP上定时传送一个文件,如何写?
http://www.codeproject.com/KB/vb/using_propertygrid.aspx
class B
{
A myA;
[TypeConverter(typeof(ExpandableObjectConverter))]
public A MyA
{
get{..}
set{..}
}
}
[TypeConverter(typeof(ExpandableObjectConverter))]
根据我查的资料,在定义A类时应该这样
[TypeConverterAttribute(typeof(AConverter))]
public class A
{}问题是这个AConverter要怎么写呢?
ExpandableObjectConverter类库中本来就有。System.ComponentModel下
B b = new B();
b.MyA = new A();
propertyGrid1.SelectedObject = b;
propertyGrid1.ExpandAllGridItems();
你试过可以??