ParameterModifier Struct-datatyp
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Kopplar en modifierare till parametrar så att bindningen kan fungera med parametersignaturer där typerna har ändrats.
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
- Arv
- Attribut
Exempel
Följande kodexempel visar detta för en medlem som har tre strängargument, varav den första och den tredje skickas med referens. Anta att en variabel med namnet obj innehåller en referens till COM-objektet.
// 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)
Kommentarer
Strukturen ParameterModifier används med Type.InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) metodens överlagring när parametrar skickas med referens till en COM-komponent som nås sent bunden. De parametrar som ska skickas med referens anges av en enda ParameterModifier struktur, som måste skickas i en matris som innehåller ett enda element. Den enskilda ParameterModifier strukturen i den här matrisen måste initieras med antalet parametrar i medlemmen som ska anropas. Ange värdet för egenskapen (indexeraren i C#) för true det indexnummer som motsvarar parameterns nollbaserade position för att ange vilka av dessa parametrar som skickas med referensItem[].
Konstruktorer
| Name | Description |
|---|---|
| ParameterModifier(Int32) |
Initierar en ny instans av ParameterModifier strukturen som representerar det angivna antalet parametrar. |
Egenskaper
| Name | Description |
|---|---|
| Item[Int32] |
Hämtar eller anger ett värde som anger om parametern vid den angivna indexpositionen ska ändras av den aktuella ParameterModifier. |