【问题标题】:Which attribute to use in System.ComponentModel namespace for setting order of fields?在 System.ComponentModel 命名空间中使用哪个属性来设置字段顺序?
【发布时间】:2010-07-20 14:46:33
【问题描述】:

默认情况下,设计器中的字段按字母顺序列出。有谁知道在System.ComponentModel 命名空间中使用哪个属性来明确设置顺序?

【问题讨论】:

    标签: .net winforms system.componentmodel


    【解决方案1】:

    使用 [Category] ​​属性对属性进行分组,以便用户可以单击“属性”窗口中的“分类”图标来排列它们。在一个类别中,名称仍将按字母顺序排序。

    PropertyGrid.PropertySort 属性确实有一个设置(PropertySort.Categorized 与 PropertySort.CategorizedAlphabetical),但 IDE 的“属性”窗口没有可供选择的图标。

    【讨论】:

    • 我已经有了 Category 属性。在类别中,我希望属性不是按字母顺序排列,而是按我指定的顺序排列。这可能吗?
    【解决方案2】:

    您可以实现 ICustomTypeDescriptor 并按您喜欢的顺序返回属性。无法保证 ui 元素会遵守该顺序。

    【讨论】:

    • 我需要 UI 来履行订单。设计器中有 2 个选项。一种是 A->Z 选项,按字母顺序对属性进行排序。如果未选择此选项,我将按照我明确指定的顺序需要它。目前它默认按字母顺序排列。 ICustomTypeDescriptor 会解决这个问题吗?
    猜你喜欢
    • 2010-12-26
    • 2019-05-06
    • 2019-03-18
    • 2012-05-29
    • 2021-08-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-01
    相关资源
    最近更新 更多