Sdílet prostřednictvím


Type.GetPropertyImpl Metoda

Definice

Při přepsání v odvozené třídě vyhledá zadanou vlastnost, jejíž parametry odpovídají zadaným typům argumentů a modifikátorům, pomocí zadaných omezení vazby.

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

Parametry

name
String

Řetězec obsahující název vlastnosti, která se má získat.

bindingAttr
BindingFlags

Bitové kombinace hodnot výčtu, které určují, jak se provádí vyhledávání.

-nebo- Default a vrátí null .

binder
Binder

Objekt, který definuje sadu vlastností a umožňuje vazbu, která může zahrnovat výběr přetíženého členu, převod typů argumentů a vyvolání členu prostřednictvím reflexe.

-nebo- Nulový odkaz ( Nothing Visual Basic) pro použití DefaultBinder .

returnType
Type

Návratový typ vlastnosti.

types
Type[]

Pole objektů představující počet, pořadí a typ parametrů Type indexované vlastnosti, které se mají získat.

-nebo- Prázdné pole typu Type (type[] types = new Type[0]) pro získání vlastnosti, která není indexována.

modifiers
ParameterModifier[]

Pole objektů ParameterModifier představující atributy přidružené k odpovídajícímu prvku v types poli. Výchozí vázací objekt tento parametr nezpracovává.

Návraty

PropertyInfo

Objekt představující vlastnost, která odpovídá zadaným požadavkům, pokud je nalezena; v opačném případě null .

Výjimky

Je nalezena více než jedna vlastnost se zadaným názvem, která odpovídá zadaným omezením vazby.

name je null.

-nebo- types je null.

-nebo- Jedním z prvků v je types null .

Pole types je multidimenzionální.

-nebo- Pole modifiers je multidimenzionální.

-nebo- typesmodifiersa nemají stejnou délku.

Poznámky

I když výchozí vazač nezpracuje (parametr), můžete pomocí abstraktní třídy napsat vlastní ParameterModifier modifiers vazbu, která zpracovává System.Reflection.Binder modifiers . ParameterModifier se používá pouze při volání prostřednictvím zprostředkovatele komunikace s objekty COM a jsou zpracovány pouze parametry, které jsou předány odkazem.

K definování vlastností, které se mají do vyhledávání zahrnout, můžete BindingFlags použít následující příznaky filtru:

  • Pokud chcete získat vrácení, BindingFlags.Instance BindingFlags.Static musíte zadat nebo .

  • Zadejte BindingFlags.Public , pokud chcete do vyhledávání zahrnout veřejné vlastnosti.

  • Určete, že se mají do vyhledávání zahrnout ne veřejné vlastnosti (to znamená soukromé, interní a BindingFlags.NonPublic chráněné vlastnosti).

  • Určete, aby byly do hierarchie zahrnuty statické členy a . Statické BindingFlags.FlattenHierarchy public členy ve protected private zděděných třídách nejsou zahrnuty.

Ke změně způsobu, jakým vyhledávání funguje, můžete použít BindingFlags následující příznaky modifikátoru:

  • BindingFlags.IgnoreCase ignoruje velká a malá písmena name .

  • BindingFlags.DeclaredOnly prohledat pouze vlastnosti deklarované pro Type , nikoli vlastnosti, které byly jednoduše zděděny.

Další informace naleznete v tématu System.Reflection.BindingFlags.

Platí pro

Viz také