ParameterModifier Struktura

Definice

Připojí modifikátor k parametrům, aby vazba mohla pracovat s signaturami parametrů, ve kterých byly změněny typy.Attaches a modifier to parameters so that binding can work with parameter signatures in which the types have been modified.

public value class ParameterModifier
public struct ParameterModifier
[System.Serializable]
public struct ParameterModifier
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct ParameterModifier
type ParameterModifier = struct
[<System.Serializable>]
type ParameterModifier = struct
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ParameterModifier = struct
Public Structure ParameterModifier
Dědičnost
ParameterModifier
Atributy

Příklady

Následující příklad kódu ukazuje tento příklad pro člena, který má tři řetězcové argumenty, první a třetí z nich je předána odkazem.The following code example shows this for a member that has three string arguments, the first and third of which are passed by reference. Předpokládejme, že proměnná s názvem obj obsahuje odkaz na objekt modelu COM.Assume that a variable named obj contains a reference to the COM object.

// Create an array containing the arguments.
array<Object^>^ args = {"Argument 1", "Argument 2", "Argument 3" };

// Initialize a ParameterModifier with the number of parameters.
ParameterModifier p = ParameterModifier(3);

// Pass the first and third parameters by reference.
p[0] = true;
p[2] = true;

// The ParameterModifier must be passed as the single element
// of an array.

array<ParameterModifier>^ mods = { p };

// Invoke the method late bound.
obj->GetType()->InvokeMember("MethodName", BindingFlags::InvokeMethod,
     nullptr, obj, args, mods, nullptr, nullptr);
// Create an array containing the arguments.
object[] args = {"Argument 1", "Argument 2", "Argument 3" };

// Initialize a ParameterModifier with the number of parameters.
ParameterModifier p = new ParameterModifier(3);

// Pass the first and third parameters by reference.
p[0] = true;
p[2] = true;

// The ParameterModifier must be passed as the single element
// of an array.
ParameterModifier[] mods = { p };

// Invoke the method late bound.
obj.GetType().InvokeMember("MethodName", BindingFlags.InvokeMethod,
     null, obj, args, mods, null, null);
' Create an array containing the arguments.
Dim args As Object = {"Argument 1", "Argument 2", "Argument 3" }

' Initialize a ParameterModifier with the number of parameters.
Dim p As New ParameterModifier(3)

' Pass the first and third parameters by reference.
p(0) = True
p(2) = True

' The ParameterModifier must be passed as the single element
' of an array.
Dim mods() As ParameterModifier = { p }

' Invoke the method late bound.
obj.GetType().InvokeMember("MethodName", BindingFlags.InvokeMethod, _
     Nothing, obj, args, mods, Nothing, Nothing)

Poznámky

ParameterModifierStruktura se používá s Type.InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) přetížením metody při předávání parametrů odkazem na komponentu modelu COM, ke které je přistupovaná vazba s pozdní vazbou.The ParameterModifier structure is used with the Type.InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) method overload when passing parameters by reference to a COM component that is accessed late bound. Parametry, které mají být předány odkazem, jsou určeny jedinou ParameterModifier strukturou, která musí být předána v poli obsahujícím jeden prvek.The parameters that are to be passed by reference are specified by a single ParameterModifier structure, which must be passed in an array containing a single element. Jedna ParameterModifier struktura v tomto poli musí být inicializována s počtem parametrů ve členu, který má být vyvolán.The single ParameterModifier structure in this array must be initialized with the number of parameters in the member that is to be invoked. Chcete-li určit, které z těchto parametrů jsou předány odkazem, nastavte hodnotu Item[] vlastnosti (indexer v jazyce C#) na true číslo indexu odpovídající nule pozice parametru.To indicate which of these parameters are passed by reference, set the value of the Item[] property (the indexer in C#) to true for the index number corresponding to the zero-based position of the parameter.

Konstruktory

ParameterModifier(Int32)

Inicializuje novou instanci ParameterModifier struktury reprezentující zadaný počet parametrů.Initializes a new instance of the ParameterModifier structure representing the specified number of parameters.

Vlastnosti

Item[Int32]

Získává nebo nastavuje hodnotu, která určuje, jestli má být parametr na zadané pozici indexu upravený aktuálním ParameterModifier .Gets or sets a value that specifies whether the parameter at the specified index position is to be modified by the current ParameterModifier.

Platí pro