FieldBuilder.SetValue Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nastaví hodnotu pole podporovaného daným objektem.
public:
override void SetValue(System::Object ^ obj, System::Object ^ val, System::Reflection::BindingFlags invokeAttr, System::Reflection::Binder ^ binder, System::Globalization::CultureInfo ^ culture);
public override void SetValue(object? obj, object? val, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder? binder, System.Globalization.CultureInfo? culture);
public override void SetValue(object obj, object val, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Globalization.CultureInfo culture);
override this.SetValue : obj * obj * System.Reflection.BindingFlags * System.Reflection.Binder * System.Globalization.CultureInfo -> unit
Public Overrides Sub SetValue (obj As Object, val As Object, invokeAttr As BindingFlags, binder As Binder, culture As CultureInfo)
Parametry
- obj
- Object
Objekt, na kterém chcete získat přístup k poli.
- val
- Object
Hodnota, která se má přiřadit k poli.
- invokeAttr
- BindingFlags
Člen IBinder , který určuje typ vazby, která je požadovaná (například IBinder.CreateInstance, IBinder.ExactBinding).
- binder
- Binder
Sada vlastností a povolení vazby, převodu typů argumentů a vyvolání členů pomocí reflexe. Pokud je binder null, použije se IBinder.DefaultBinding.
- culture
- CultureInfo
Předvolby softwaru konkrétní jazykové verze.
Výjimky
Tato metoda není podporována.
Poznámky
Tato metoda přiřadí val parametr k poli, které se projeví touto instancí na Objectobj. Pokud je pole statické, obj bude ignorováno. Pro nestatická pole by měla být instance třídy, obj která dědí nebo deklaruje pole.
Nová hodnota se předává jako Object. Pokud je například typ pole boolean, předá se instance Object s příslušnou logickou hodnotou. Před nastavením hodnoty zkontroluje, SetValue jestli má uživatel přístupové oprávnění.
Omezení přístupu se ignorují pro plně důvěryhodný kód.
Private k konstruktorům, metodám, polím a vlastnostem lze přistupovat a vyvolat pomocí reflexe, kdykoli je kód plně důvěryhodný.
Note
Tato metoda se v současné době nepodporuje. Jako alternativní řešení načtěte FieldInfo ho tak, že se zamyslíte nad dokončeným typem a voláním SetValue , které nastaví hodnotu pole.