Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

ParameterModifier structure

 

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.

Espace de noms:   System.Reflection
Assembly:  mscorlib (dans mscorlib.dll)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public struct ParameterModifier

NomDescription
System_CAPS_pubmethodParameterModifier(Int32)

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

NomDescription
System_CAPS_pubpropertyItem[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.

NomDescription
System_CAPS_pubmethodEquals(Object)

Indique si cette instance et un objet spécifié sont égaux.(Hérité de ValueType.)

System_CAPS_pubmethodGetHashCode()

Retourne le code de hachage de cette instance.(Hérité de ValueType.)

System_CAPS_pubmethodGetType()

Obtient le Type de l'instance actuelle.(Hérité de Object.)

System_CAPS_pubmethodToString()

Retourne le nom de type qualifié complet de cette instance.(Hérité de ValueType.)

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

L’exemple de code suivant illustre ce point pour un membre qui comporte trois arguments string, le premier et le troisième sont passés par référence. Supposons qu’une variable nommée obj contient une référence à l’objet 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);

.NET Framework
Disponible depuis 1.1
Silverlight
Disponible depuis 2.0
Silverlight pour Windows Phone
Disponible depuis 7.0

Tous les membres statiques publics ( Shared en Visual Basic) de ce type sont thread-safe. Les membres d’instance n’ont pas la garantie d’être thread-safe.

Retour au début
Afficher: