【问题标题】:C# propertyGrid miscellaneous questions about propertiesC#propertyGrid关于属性的杂项问题
【发布时间】:2012-03-28 18:29:46
【问题描述】:

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

1) 如果我的属性是一个类,我该怎么办?当编辑多个对象时,会发生奇怪的事情(当属性是结构或简单类型时,还可以,但是如果属性是类,则在应用值时它会将同一个类的引用传递给所有编辑的成员,这显然很糟糕,它不会识别两个具有相同成员的类,因为它们具有不同的引用等)

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

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

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

4) 当值为空时如何显示?当用户开始编辑时它必须消失!例如,我有属性“名称”,如果它为空,它应该在属性网格中显示 ,但是一旦用户单击编辑,当光标出现时, 应该消失

【问题讨论】:

    标签: c# properties propertygrid


    【解决方案1】:

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

    还有一篇很棒的文章如何实现自定义下拉菜单,例如在代码项目中包含清单控件的下拉列表: http://www.codeproject.com/Articles/21085/CheckBox-ComboBox-Extending-the-ComboBox-Class-and

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

    您好,

    【讨论】:

    • 谢谢,我设法将文章中的 VB 转换为 C# 并设法让它继续进行,现在我有几个杂项问题,我想我会更新这个主题而不是产生另一个......
    • 太好了,我能帮助你:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-28
    • 2011-08-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多