Lire en anglais

Partager via


ParameterModifier Structure

Définition

Joint un modificateur aux paramètres pour que la liaison fonctionne avec des signatures de paramètres dans lesquelles les types ont été modifiés.

C#
public readonly struct ParameterModifier
C#
public struct ParameterModifier
C#
[System.Serializable]
public struct ParameterModifier
C#
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct ParameterModifier
Héritage
ParameterModifier
Attributs

Exemples

L’exemple de code suivant le montre pour un membre qui a trois arguments de chaîne, dont le premier et le troisième sont passés par référence. Supposons qu’une variable nommée obj contienne une référence à l’objet COM.

C#
// 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);

Remarques

La ParameterModifier structure est utilisée avec la surcharge de méthode lors du Type.InvokeMember(String, BindingFlags, Binder, Object, Object[], ParameterModifier[], CultureInfo, String[]) passage de paramètres par référence à un composant COM accessible tardivement. Les paramètres qui doivent être passés par référence sont spécifiés par une structure unique ParameterModifier , qui doit être passée dans un tableau contenant un élément unique. La structure unique ParameterModifier de ce tableau doit être initialisée avec le nombre de paramètres dans le membre à appeler. Pour indiquer quels paramètres sont passés par référence, définissez la valeur de la Item[] propriété (l’indexeur en C#) true sur pour le numéro d’index correspondant à la position de base zéro du paramètre.

Constructeurs

ParameterModifier(Int32)

Initialise une nouvelle instance de la structure ParameterModifier représentant nombre de paramètres spécifié.

Propriétés

Item[Int32]

Obtient ou définit une valeur qui spécifie si le paramètre à la position d’index spécifiée doit être modifié par l'élément ParameterModifier actuel.

S’applique à

Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.5, 1.6, 2.0, 2.1