2016-04-20 10 views
1

私はPropertyGrid of Xceedを使用していくつかの要素の特性を表示しています。要素には、一般、高度、その他、特殊など、さまざまなカテゴリがあります。ここでは、Xceedのプロパティグリッドがアルファベット順にプロパティと同様にカテゴリをソートすることがわかりました。 [PropertyOrder(n)]を使用してカテゴリ内のプロパティを並べ替えることができました。私もそうなカテゴリをソートしたかった、私は[CategoryOrder("General", 0)]ようCategoryOrderを使用してみましたが、それは次のようなエラーが表示されます。カテゴリXceed PropertyGridでの注文

Error 2 Attribute 'CategoryOrder' is not valid on this declaration type. It is only valid on 'class' declarations.

私はそれが間違って使用していますか? 以下のコードは、これをどのように使用しているかを示すサンプルです。ここで

[Category("General")] 
[CategoryOrder("General", 0)] 
[DisplayName("XValue")] 
[Description("Value of X-Coordinate")] 
[ReadOnly(true)] 
[PropertyOrder(1)] 

[Category("Advanced")] 
[CategoryOrder("Advanced", 1)] 
[DisplayName("Collision")] 
[Description("Collision")] 
[ReadOnly(true)] 
[PropertyOrder(1)] 

[Category("Others")] 
[CategoryOrder("Others", 3)] 
[DisplayName("Traffic")] 
[Description("Traffic at a point")] 
[ReadOnly(true)] 
[PropertyOrder(1)] 

[Category("Special")] 
[CategoryOrder("Special", 2)] 
[DisplayName("Special cases")] 
[Description("Contains the special cases and files")] 
[PropertyOrder(1)] 

答えて

4

は、それが使用されるべき方法についてのサンプルです:

[CategoryOrder("General", 1)] 
[CategoryOrder("Advanced", 2)] 
[CategoryOrder("Other", 3)] 
public class MyClass 
{ 
    [Category("General")] 
    public string Property1 { get; set; } 
    [Category("Advanced")] 
    public int Property2 { get; set; } 
    [Category("Other")] 
    public double Property3 { get; set; } 
    [Category("General")] 
    public string Property4 { get; set; } 
    [Category("Advanced")] 
    public int Property5 { get; set; } 
    [Category("Other")] 
    public double Property6 { get; set; } 
} 

enter image description here

+0

はありがとうございました!それは完璧に働いています。 – Skaranjit

+0

あなたは大歓迎です! – jsanalytics