Type.GetPropertyImpl Méthode

Définition

En cas de substitution dans une classe dérivée, recherche la propriété spécifiée dont les paramètres correspondent aux types d'arguments et modificateurs spécifiés, en utilisant les contraintes de liaison indiquées.

protected:
 abstract System::Reflection::PropertyInfo ^ GetPropertyImpl(System::String ^ name, System::Reflection::BindingFlags bindingAttr, System::Reflection::Binder ^ binder, Type ^ returnType, cli::array <Type ^> ^ types, cli::array <System::Reflection::ParameterModifier> ^ modifiers);
protected abstract System.Reflection.PropertyInfo? GetPropertyImpl (string name, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder? binder, Type? returnType, Type[]? types, System.Reflection.ParameterModifier[]? modifiers);
protected abstract System.Reflection.PropertyInfo GetPropertyImpl (string name, System.Reflection.BindingFlags bindingAttr, System.Reflection.Binder binder, Type returnType, Type[] types, System.Reflection.ParameterModifier[] modifiers);
abstract member GetPropertyImpl : string * System.Reflection.BindingFlags * System.Reflection.Binder * Type * Type[] * System.Reflection.ParameterModifier[] -> System.Reflection.PropertyInfo
Protected MustOverride Function GetPropertyImpl (name As String, bindingAttr As BindingFlags, binder As Binder, returnType As Type, types As Type(), modifiers As ParameterModifier()) As PropertyInfo

Paramètres

name
String

Chaîne contenant le nom de la propriété à obtenir.

bindingAttr
BindingFlags

Combinaison de bits de valeurs d’énumération qui spécifie la façon dont est effectuée la recherche.

  • ou - Default pour retourner null.
binder
Binder

Objet qui définit un ensemble de propriétés et permet la liaison, ce qui peut impliquer la sélection d’un membre surchargé, la contrainte de types d’arguments et l’appel d’un membre par la réflexion.

  • ou - Référence null (Nothing en Visual Basic) pour utiliser DefaultBinder.
returnType
Type

Type de retour de la propriété.

types
Type[]

Tableau d'objets Type représentant le nombre, l'ordre et le type des paramètres de la propriété indexée à obtenir.

  • ou - Tableau vide du type Type (c'est-à-dire Type[] types = new Type[0]) pour obtenir une propriété qui n'est pas indexée.
modifiers
ParameterModifier[]

Tableau d'objets ParameterModifier représentant les attributs associés à l'élément correspondant dans le tableau types. Le binder par défaut ne traite pas ce paramètre.

Retours

PropertyInfo

Objet représentant la propriété qui correspond aux critères spécifiés, si elle est trouvée ; sinon, null.

Exceptions

Au moins deux propriétés portent le nom spécifié et correspondent aux contraintes de liaison spécifiées.

name a la valeur null.

-ou- types a la valeur null.

  • ou - Un des éléments de types est null.

types est multidimensionnel.

  • ou - modifiers est multidimensionnel.

  • ou - types et modifiers n’ont pas la même longueur.

Remarques

Bien que le binder par défaut ne traite pas ParameterModifier (le modifiers paramètre), vous pouvez utiliser la System.Reflection.Binder classe abstraite pour écrire un Binder personnalisé qui effectue le traitement modifiers . ParameterModifier est utilisé uniquement lors de l’appel par le biais de COM Interop, et seuls les paramètres passés par référence sont gérés.

Les BindingFlags indicateurs de filtre suivants peuvent être utilisés pour définir les propriétés à inclure dans la recherche :

  • Vous devez spécifier BindingFlags.Instance ou BindingFlags.Static pour obtenir un retour.

  • Spécifiez BindingFlags.Public pour inclure les propriétés publiques dans la recherche.

  • Spécifiez BindingFlags.NonPublic pour inclure les propriétés non publiques (c’est-à-dire les propriétés privées, internes et protégées) dans la recherche.

  • Spécifiez BindingFlags.FlattenHierarchy pour inclure public et ajouter protected des membres statiques private dans la hiérarchie. les membres statiques des classes héritées ne sont pas inclus.

BindingFlagsVous pouvez utiliser les indicateurs de modificateur suivants pour modifier le fonctionnement de la recherche :

  • BindingFlags.IgnoreCase pour ignorer la casse de name .

  • BindingFlags.DeclaredOnly pour rechercher uniquement les propriétés déclarées sur le Type , et non celles qui ont simplement été héritées.

Consultez la rubrique System.Reflection.BindingFlags (éventuellement en anglais) pour plus d'informations.

S’applique à

Voir aussi