ParameterModifier Struktura
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Dołącza modyfikator do parametrów, aby powiązanie mogło współdziałać z podpisami parametrów, w których typy zostały zmodyfikowane.
public value class ParameterModifier
[System.Serializable]
public struct ParameterModifier
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct ParameterModifier
public struct ParameterModifier
public readonly struct ParameterModifier
[<System.Serializable>]
type ParameterModifier = struct
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ParameterModifier = struct
type ParameterModifier = struct
Public Structure ParameterModifier
- Dziedziczenie
- Atrybuty
Przykłady
Poniższy przykład kodu pokazuje to dla elementu członkowskiego, który ma trzy argumenty ciągów, z których pierwszy i trzeci są przekazywane przez odwołanie. Załóżmy, że zmienna o nazwie obj zawiera odwołanie do obiektu COM.
// 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)
Uwagi
Struktura ParameterModifier jest używana z Type.InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) przeciążeniem metody podczas przekazywania parametrów przez odwołanie do składnika COM, który jest uzyskiwany do późnej granicy. Parametry, które mają zostać przekazane przez odwołanie, są określane przez jedną ParameterModifier strukturę, która musi zostać przekazana w tablicy zawierającej jeden element.
ParameterModifier Pojedyncza struktura w tej tablicy musi zostać zainicjowana z liczbą parametrów w elemencie członkowskim, który ma być wywoływany. Aby wskazać, które z tych parametrów są przekazywane przez odwołanie, ustaw wartość Item[] właściwości (indeksator w języku C#) true dla numeru indeksu odpowiadającego pozycji zerowej parametru.
Konstruktory
| Nazwa | Opis |
|---|---|
| ParameterModifier(Int32) |
Inicjuje nowe wystąpienie ParameterModifier struktury reprezentujące określoną liczbę parametrów. |
Właściwości
| Nazwa | Opis |
|---|---|
| Item[Int32] |
Pobiera lub ustawia wartość określającą, czy parametr na określonej pozycji indeksu ma zostać zmodyfikowany przez bieżący ParameterModifierelement . |