C#propertyGrid关于属性的杂项问题

时间:2012-03-28 18:29:47

标签: c# properties propertygrid

我有几个关于propertyGrid中显示的属性的问题我似乎无法找到答案:

1)如果我的财产是一个班级怎么办?当编辑多个对象时,会发生straaange事件(当属性是struct或简单类型时,它没关系,但是如果属性是class,它会在应用值时将相同类的引用传递给所有已编辑的成员,这显然很糟糕,并且它不会识别两个具有相同成员的类,因为它们具有不同的引用等)

2)如何调整我为属性创建的自定义下拉列表编辑器?

3)当多个对象具有不同的值时,我能否以某种方式区分空值和无值?喜欢,所以

  • 如果我选择了具有相同“name”属性的2个对象,则会显示名称:TEXT
  • 如果我选择了2个带有“name”=“”的对象,它将显示名称:
  • 如果我选择了2个具有不同“名称”的对象,则会显示名称:

4)当价值空白时,我该如何展示?当用户开始编辑时它必须消失!例如,我有属性“名称”,如果它是空白,它应该有<>显示在属性网格中,但只要用户点击进行编辑,当光标出现时,<>应该消失

1 个答案:

答案 0 :(得分:0)

有一个很好的示例如何在MSDN中为属性网格实现自定义编辑器: http://msdn.microsoft.com/en-us/library/ms171840.aspx

以及如何实现自定义下拉菜单的精彩文章,例如:在codeproject上有一个带有清单控件的下拉列表: http://www.codeproject.com/Articles/21085/CheckBox-ComboBox-Extending-the-ComboBox-Class-and

如果你把这两篇文章结合起来,那就完成了;)

问候,