FieldBuilder.SetValue 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
設定指定物件所支援之欄位的值。
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)
參數
- obj
- Object
要存取欄位的物件。
- val
- Object
要指派給欄位的值。
- invokeAttr
- BindingFlags
IBinder
的成員,指定所需的系結類型(例如 IBinder.CreateInstance、IBinder.ExactBinding)。
- binder
- Binder
一組屬性,並啟用系結、強制自變數型別,以及使用反映來叫用成員。 如果 binder 為 null,則會使用 IBinder.DefaultBinding。
- culture
- CultureInfo
特定文化特性的軟體喜好設定。
例外狀況
不支援這個方法。
備註
這個方法會將 val
參數指派給這個實例在 Objectobj
上反映的欄位。 如果欄位是靜態的,則會忽略 obj
。 對於非靜態欄位,obj
應該是繼承或宣告欄位之類別的實例。
新的值會以 Object傳遞。 例如,如果欄位的類型為布爾值,則會傳遞具有適當布爾值之 Object 實例。 設定值之前,SetValue 會檢查使用者是否具有訪問許可權。
完全信任的程式代碼會忽略存取限制。
Private
建構函式、方法、欄位和屬性,只要程式代碼完全受信任,就可以使用反映來存取和叫用。