首頁 >後端開發 >C++ >您可以在組件載入後動態變更屬性屬性嗎?

您可以在組件載入後動態變更屬性屬性嗎?

Mary-Kate Olsen
Mary-Kate Olsen原創
2025-01-01 00:13:10210瀏覽

Can You Dynamically Change Attribute Properties After Assembly Load?

動態修改屬性

載入組件後是否可以變更屬性參數?考慮以下類別:

public class UserInfo
{
    [Category("change me!")]
    public int Age
    {
        get;
        set;
    }
    [Category("change me!")]
    public string Name
    {
        get;
        set;
    }
}

儘管是第三方供應商類別(禁止程式碼修改),但您希望在將實例綁定到屬性網格時修改「change me」類別名稱。

解決方案:

屬性實例值可以在運行時動態修改。取得屬性實例:

ASCII[] attrs1 = (ASCII[])typeof(MyClass).GetCustomAttributes(typeof(ASCII), false);

修改其公共變數:

attrs1[0].MyData = "A New String";

建立另一個實例來示範變更:

ASCII[] attrs3 = (ASCII[])typeof(MyClass).GetCustomAttributes(typeof(ASCII), false);
MessageBox.Show(attrs3[0].MyData);

參考:http:// /www.vsj.co.uk/articles/display.asp?id=713

以上是您可以在組件載入後動態變更屬性屬性嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn