2013-05-11 61 views
0

我試圖檢索一個列表應用於我的類的所有屬性。我如何檢索一個類上的所有自定義屬性

我可以看到Attribute.GetCustomAttributes()系列的方法,但我只能看到方法來重新提供程序集,模塊,成員和屬性的所有屬性 - 對類沒有任何作用。將Type作爲參數的方法版本不合適,因爲它們只返回該類型的屬性,而我想按順序遍歷所有屬性。

我爲什麼要這樣做?我伸出我的應用程序,並添加一些簡單的UI MODS的我想讀取用戶的密碼,並使用屬性來定義的控件,如...

[MyTextBox("Address1:")] 
[MyButton("QueryStatus")] 
[MyButton("QuerySpeed/Pos")] 
public class QueryStatus 
{ 

我已經加載的程序集和能訪問類類型。有另一個地方,我可以找到我所有的自定義屬性?

回答

1

只需使用Type.GetCustomAttributes()

Type type = ...; 
foreach (var attribute in type.GetCustomAttributes(inherit: false)) 
{ 
    // Whatever you need to do 
} 
+0

謝謝,我不知道我是如何錯過的。 – Frank 2013-05-11 11:10:08

相關問題