2011-01-27 44 views
2

可見我有一個PropertyGrid中有兩類:「客戶測試1」和「客戶測試2」多個類別不帶屬性

如果我在BrowseableAttributes只有一個的CategoryAttribute一類是顯示。 如果我在BrowseableAttributes NONE類別中顯示了BOTH/TWO CategoryAttribute`s。

爲什麼?

public class Customer 
    { 
     [DisplayName("first name...:")] 
     [Category("Customer Test 1")] 
     public string FirstName { get; set; } 

     [DisplayName("number...")] 
     [Category("Customer Test 1")] 
     public int Number { get; set; } 

     [DisplayName("wage...:")] 
     [Category("Customer Test 2")] 
     public int Wage { get; set; } 

     [DisplayName("description...:")] 
     [Category("Customer Test 1")] 
     public string Desc { get; set; } 

     [DisplayName("shit...:")] 
     [Category("Customer Test 1")] 
     public string Nonsens { get; set; }  
    } 

    public Form1() 
      { 
       InitializeComponent(); 

       Attribute[] attributes = new Attribute[]{ new CategoryAttribute("Customer Test 1"), new CategoryAttribute("Customer Test 2") }; 
       propertyGrid1.BrowsableAttributes = new AttributeCollection(attributes); 

       propertyGrid1.PropertySort = PropertySort.Categorized; 
       propertyGrid1.ToolbarVisible = true; 
       propertyGrid1.SelectedObject = new Customer() { FirstName = "Bernd", Number = 100, Desc = 

"steine", Wage = 3333, Nonsens = "crap" }; 
     } 

回答

1

您確認,如果您分配多個屬性BrowsableAttributes,屬性需要只有1匹配屬性,不是所有的人?

換句話說,BrowsableAttributes可能充當過濾器使用AND運算符而不是OR的屬性。但我不得不承認,我自己並沒有嘗試過。

+0

找到了限制,雖然它沒有意義... http://social.msdn.microsoft.com/Forums/en-US/winformsdesigner/thread/707ebb7f-0a76-40d9-9e0c-31183d454d90你知道嗎?有可能對propertygrid只顯示一些僅顯示被註釋的屬性?反過來... – msfanboy 2011-01-27 21:17:54