XamlMember Třída

Definice

Poskytuje identifikátor systému typu XAML pro členy typů XAML.Provides the XAML type system identifier for members of XAML types. Identifikátor používá čtečky XAML a zapisovače XAML během zpracovávání členských uzlů (když je čtečka XAML umístěná na a StartMember) a také pro obecnou systémovou logiku typu XAML.The identifier is used by XAML readers and XAML writers during processing of member nodes (when the XAML reader is positioned on a StartMember) and also for general XAML type system logic.

public ref class XamlMember : IEquatable<System::Xaml::XamlMember ^>
public class XamlMember : IEquatable<System.Xaml.XamlMember>
type XamlMember = class
    interface IEquatable<XamlMember>
Public Class XamlMember
Implements IEquatable(Of XamlMember)
Dědičnost
XamlMember
Odvozené
Implementuje

Poznámky

XamlMembermůže použít tři metodologie pro vrácení informací o členu XAML: standardní reflexe modulu CLR (Common Language Runtime); technika reflexe pouze odkazující volání interních rozhraní API, která používají optimalizované bitové příznaky; nebo volání virtuálních přepsání Lookup* rozhraní API, které je k dispozici v rámci možných XamlMember podtříd.XamlMember can use three methodologies for returning information about a XAML member: standard common language runtime (CLR) reflection; a reference-only reflection technique calling internal APIs that use optimized bit flags; or calling into virtual overrides of the Lookup* API that is provided by possible XamlMember subclasses. Pro většinu použití .NET Framework rozhraní API služby XAML a XamlMember rozhraní API použijete výchozí kontext schématu XAML.For most uses of .NET Framework XAML Services APIs and the XamlMember API, you use the default XAML schema context. Výchozí kontext schématu XAML pro .NET Framework služby XAML používá pro systém typů zálohování CLR.The default XAML schema context for .NET Framework XAML Services uses CLR backing for the type system. To umožňuje čtenářům XAML a zapisovačům XAML pracovat s jakýmkoli typem nebo členem, který je definován v nebo jinak dostupný pro, CLR a jeho techniky reflexe.This enables the XAML readers and XAML writers to work with any type or member that is defined in, or otherwise available to, the CLR and its reflection techniques.

Lookup * rozhraní API a odvozené třídy XamlMemberLookup* APIs and XamlMember Derived Classes

XamlMemberdefinuje několik virtuálních členů, které mohou odvozené třídy přepsat.XamlMember defines several virtual members that derived classes might override. Tito členové mají názvy, které vždy začínají řetězcem Lookup.These members have names that always start with the string Lookup. Zbytek názvu rozhraní API potom odkazuje na vlastnost, kterou virtuální metoda ovlivňuje.The remainder of the API name then references the property that the virtual method influences. Například XamlMember odvozená třída může přepsat LookupTargetType pro ovlivnění, která vlastnost TargetType definovaná základní třídou vrátí v odvozené třídě.For example, a XamlMember derived class might override LookupTargetType to influence what the base-defined property TargetType returns in a derived class. Můžete odhadnout návratové hodnoty pro takové vlastnosti v XamlMember nebo existující odvozené třídy, a to tak, že si Lookup* přečtete dokumentaci pro příslušné metody.You can predict return values for such properties in XamlMember or existing derived classes by reading the documentation for the relevant Lookup* methods.

Účelem Lookup* metod je poskytnout techniku rozšíření systému typu XAML, která zahrnuje XamlMember základní třídu.The purpose of the Lookup* methods is to provide a XAML type system extension technique that incorporates the XamlMember base class. Odvozením z XamlMember a Lookup přepsáním virtuálních členů můžete definovat koncept člena XAML pro schéma XAML v systému typů XAML, aniž by bylo vázáno na specifiky systému back-Type nebo technologie.By deriving from XamlMember and overriding the Lookup virtual members, you can define the concept of a XAML member for a XAML schema in a XAML type system without being tied to the specifics of a backing type system or technology. V tomto schématu můžete také použít poskytnutý kontext schématu XAML a stále vracet požadované výsledky.You can also use a provided XAML schema context under this scheme and still return the results you want.

Zvažte XamlMember například vlastnost IsWritePublic.As an example, consider the XamlMember property IsWritePublic. Tato vlastnost informuje volající, které operace, jako je XamlWriter například použití pro serializaci, mohou zapsat hodnotu pro tento člen do cílového objektu.This property informs callers that operations such as using a XamlWriter for serialization can write a value for this member on a target object. Ve výchozí implementaci je určení, zda je členem zapisovatelné, provedeno pomocí technik reflexe proti záložnímu CLR Type a jeho členům MemberInfo().In the default implementation, the determination of whether the member is writable is made by using reflection techniques against the backing CLR Type and its members (the MemberInfo). Proto systém typů XAML ve výchozím nastavení závisí na typu CLR systému.Therefore, by default, the XAML type system depends on the CLR type system. Tuto závislost pro vytváření sestav IsWritePublic systému typů XAML lze však odebrat přepsáním rozhraní API. LookupIsWritePublicHowever, you can remove this dependency for your XAML type system reporting of IsWritePublic by overriding the API LookupIsWritePublic. V rámci vašeho přepsání můžete použít jiné určení, například metadata, která jsou specifická pro vaši technologii, hlavní vyhledávací tabulku, která je optimalizována pro pevný slovník XAML, nebo celou řadu dalších strategií pro určení toho, zda je člen XAML zapisovatelný do vaší Slovník XAML.Within your override, you can use other determinations, such as metadata that is specific to your technology, a master lookup table that is optimized for a fixed XAML vocabulary, or a variety of other strategies for determining whether a XAML member is writable in your XAML vocabulary.

Sestavování XamlMember bez kontextu schématu XAMLConstructing XamlMember Without XAML Schema Context

Většina konstruktorů XamlMember XamlSchemaContext vyžaduje jako součást inicializace.Most constructors of XamlMember require a XamlSchemaContext as part of their initialization. Je také potřeba pro mnoho interních XamlSchemaContext operací, jako je například získání informací předávaných z typu zálohování. XamlSchemaContextThe XamlSchemaContext is also necessary for many internal XamlSchemaContext operations, such as obtaining information that is being forwarded from the backing type. Při práci s XamlMember rozhraním API obvykle XamlSchemaContext máte k dispozici z obklopující konstrukce, jako je XamlWriternapříklad.When you are working with the XamlMember API, you typically have a XamlSchemaContext that is available from a surrounding construct such as a XamlWriter. V tomto případě můžete předat XamlSchemaContext odkaz na všechna volání systému typu XAML, která vyžadují kontext schématu XAML.In this case, you can pass the XamlSchemaContext reference through to all XAML type system calls that require a XAML schema context.

Jeden konkrétní konstruktor, XamlMember(String, XamlType, Boolean), XamlSchemaContextnevyžaduje.One specific constructor, XamlMember(String, XamlType, Boolean), does not require a XamlSchemaContext. Objekt XamlMember , který je vytvořen XamlMember(String, XamlType, Boolean) pomocí signatury, však true vrátí IsUnknownpro.However, a XamlMember that is constructed with the XamlMember(String, XamlType, Boolean) signature returns true for IsUnknown.

Pro cestu k zatížení, která XamlObjectWriterzahrnuje, nelze takový člen zapsat do grafu objektů.For a load path that involves XamlObjectWriter, such a member cannot be written into an object graph. Pomocí XamlObjectWriter.WriteStartMember implementace .NET Framework XAML Services XamlMember XamlObjectWriterException vyvolá volání při odpovídajících sestavách true pro IsUnknown.Using the .NET Framework XAML services implementation, the XamlObjectWriter.WriteStartMember call throws a XamlObjectWriterException when the relevant XamlMember reports true for IsUnknown.

XamlMember Neměli byste vytvořit, která má IsUnknown true hodnotu pro, pokud vaše implementace nemůže zpracovat výjimky z XamlObjectWriter, nebo máte jiné způsoby, jak XamlObjectWriter chování upravit.You should not construct a XamlMember that has a value of true for IsUnknown unless your implementation can handle the exceptions from XamlObjectWriter, or you have other ways to adjust the XamlObjectWriter behavior. Například jedna nebo více z následujících možností může být pravdivá pro vaši implementaci:For example, one or more of the following might be true of your implementation:

Konstruktory

XamlMember(EventInfo, XamlSchemaContext)

Inicializuje novou instanci XamlMember třídy pomocí systému EventInfo typů CLR a XamlSchemaContext.Initializes a new instance of the XamlMember class using CLR type system EventInfo and a XamlSchemaContext.

XamlMember(EventInfo, XamlSchemaContext, XamlMemberInvoker)

Inicializuje novou instanci XamlMember třídy pomocí systému EventInfo typů CLR a XamlSchemaContext, včetně XamlMemberInvoker informací.Initializes a new instance of the XamlMember class using CLR type system EventInfo and a XamlSchemaContext, including XamlMemberInvoker information.

XamlMember(PropertyInfo, XamlSchemaContext)

Inicializuje novou instanci XamlMember třídy pomocí systému PropertyInfo typů CLR a XamlSchemaContext.Initializes a new instance of the XamlMember class using CLR type system PropertyInfo and a XamlSchemaContext.

XamlMember(PropertyInfo, XamlSchemaContext, XamlMemberInvoker)

Inicializuje novou instanci XamlMember třídy pomocí reflexe PropertyInfo a XamlSchemaContexta, včetně XamlMemberInvoker informací.Initializes a new instance of the XamlMember class using reflection PropertyInfo and a XamlSchemaContext, including XamlMemberInvoker information.

XamlMember(String, MethodInfo, MethodInfo, XamlSchemaContext)

Inicializuje novou instanci XamlMember třídy XamlMember pro, která představuje připojitelná vlastnost.Initializes a new instance of the XamlMember class for a XamlMember that represents an attachable property.

XamlMember(String, MethodInfo, MethodInfo, XamlSchemaContext, XamlMemberInvoker)

Inicializuje novou instanci XamlMember třídy XamlMember pro, která představuje připojitelnáelné vlastnosti, včetně XamlMemberInvoker informací.Initializes a new instance of the XamlMember class for a XamlMember that represents an attachable property, including XamlMemberInvoker information.

XamlMember(String, MethodInfo, XamlSchemaContext)

Inicializuje novou instanci XamlMember třídy XamlMember pro, která představuje připojenou událost.Initializes a new instance of the XamlMember class for a XamlMember that represents an attachable event.

XamlMember(String, MethodInfo, XamlSchemaContext, XamlMemberInvoker)

Inicializuje novou instanci XamlMember třídy XamlMember pro, která představuje připojenou událost, včetně XamlMemberInvoker informací.Initializes a new instance of the XamlMember class for a XamlMember that represents an attachable event, including XamlMemberInvoker information.

XamlMember(String, XamlType, Boolean)

Inicializuje novou instanci XamlMember třídy pomocí názvu řetězce a deklarující XamlType informace.Initializes a new instance of the XamlMember class using a string name and declaring XamlType information. Objekt XamlMember vytvořený s tímto podpisem má významná omezení.A XamlMember that is constructed with this signature has significant limitations.

Vlastnosti

DeclaringType

Získá pro typ, který deklaruje člena, který je spojen s tímto XamlMember. XamlTypeGets the XamlType for the type that declares the member that is associated with this XamlMember.

DeferringLoader

XamlValueConverter<TConverterBase> Získá objekt, který se používá pro odložené načítání deklarovaných objektů XAML.Gets a XamlValueConverter<TConverterBase> object, which is used for deferred loading of XAML declared objects.

DependsOn

Načte seznam XamlMember objektů.Gets a list of XamlMember objects. Tyto sestavy vykazují členy, u kterých existovaly vztahy závislostí pro XamlMemberpořadí inicializace vzhledem k tomuto.These report the members where dependency relationships for initialization order exist relative to this XamlMember.

Invoker

Získá implementaci, která je spojená s XamlMembertímto. XamlMemberInvokerGets the XamlMemberInvoker implementation that is associated with this XamlMember.

IsAmbient

Načte hodnotu, která označuje, zda XamlMember je tato vlastnost hlášena jako vlastnost Ambient.Gets a value that indicates whether this XamlMember is reported as an ambient property.

IsAttachable

Získá hodnotu, která označuje, zda XamlMember se jedná o připojeného člena.Gets a value that indicates whether this XamlMember is an attachable member.

IsDirective

Získá hodnotu, která označuje, zda XamlMember se jedná o direktivu jazyka XAML.Gets a value that indicates whether this XamlMember is a XAML directive.

IsEvent

Získá hodnotu, která označuje, zda XamlMember Toto představuje člena události.Gets a value that indicates whether this XamlMember represents an event member.

IsNameValid

Získá hodnotu, která označuje, zda XamlMember je tato hodnota inicializována xamlName s platným Nameřetězcem jako jeho.Gets a value that indicates whether this XamlMember is initialized with a valid xamlName string as its Name.

IsReadOnly

Získá hodnotu, která označuje, zda XamlMember se jedná o člena určeného jen pro čtení.Gets a value that indicates whether this XamlMember represents a read-only member.

IsReadPublic

Získá hodnotu, která označuje, zda XamlMember představuje člen s vystupujícím veřejným get přístupovým objektem.Gets a value that indicates whether this XamlMember represents a member with a callable public get accessor.

IsUnknown

Získá hodnotu, která označuje, zda člen nelze přeložit do záložního systému, který se používá pro řešení typu a člena.Gets a value that indicates whether the member is not resolvable by the backing system that is used for type and member resolution.

IsWriteOnly

Získá hodnotu, která označuje, zda XamlMember představuje člena pouze pro zápis.Gets a value that indicates whether this XamlMember represents a write-only member.

IsWritePublic

Získá hodnotu, která označuje, zda XamlMember představuje člen, který má vyvolatelné veřejné set přistupující objekty.Gets a value that indicates whether this XamlMember represents a member that has a callable public set accessor.

MarkupExtensionBracketCharacters

Definuje znaky levé a pravé závorky pro rozšíření značek.Defines the opening and closing bracket characters for a markup extension.

Name

Získá řetězec XamlMembernázvu, který deklaruje toto. xamlNameGets the xamlName name string that declares this XamlMember.

PreferredXamlNamespace

Získá jeden identifikátor URI oboru názvů XAML, který identifikuje primární obor názvů XAML XamlMemberpro tento.Gets the single XAML namespace URI that identifies the primary XAML namespace for this XamlMember.

SerializationVisibility

DesignerSerializationVisibility Získá hodnotu, která označuje, jak má vizuální Návrhář zpracovat člen.Gets a DesignerSerializationVisibility value, which indicates how a visual designer should process the member.

TargetType

Získá typ, XamlMember kde může existovat. XamlTypeGets the XamlType of the type where the XamlMember can exist.

Type

XamlType Získá typ, který je použit členem.Gets the XamlType of the type that is used by the member.

TypeConverter

XamlValueConverter<TConverterBase> Získá objekt, který lze použít pro konstrukci typu konstrukce deklarovaných objektů XAML.Gets a XamlValueConverter<TConverterBase> object, which can be used for type conversion construction of XAML declared objects.

UnderlyingMember

Získá systém MemberInfo typů CLR, který je k dispozici pro člena, který je vytvořen MethodInfopomocí PropertyInfo, EventInfonebo.Gets the CLR type system MemberInfo that is available for a member that is constructed by PropertyInfo, MethodInfo, or EventInfo.

ValueSerializer

XamlValueConverter<TConverterBase> Získává objekt, který se používá pro serializaci hodnot deklarovaných objektů XAML.Gets a XamlValueConverter<TConverterBase> object, which is used for value serialization of XAML declared objects.

Metody

Equals(Object)

Označuje, zda je aktuální objekt roven jinému objektu.Indicates whether the current object is equal to another object.

Equals(XamlMember)

Označuje, zda je aktuální objekt roven jinému objektu stejného typu.Indicates whether the current object is equal to another object of the same type.

GetHashCode()

Vrátí hodnotu hash tohoto objektu.Returns the hash code for this object.

GetType()

Získá Type aktuální instance.Gets the Type of the current instance.

(Zděděno od Object)
GetXamlNamespaces()

Vrátí seznam oborů názvů XAML, kde může existovat tento člen XAML.Returns a list of XAML namespaces where this XAML member can exist.

LookupCustomAttributeProvider()

Při implementaci v odvozené třídě vrátí ICustomAttributeProvider implementaci.When implemented in a derived class, returns an ICustomAttributeProvider implementation.

LookupDeferringLoader()

XamlValueConverter<TConverterBase> Vrátí objekt, který se používá pro odložené načítání deklarovaných objektů XAML.Returns a XamlValueConverter<TConverterBase> object, which is used for deferred loading of XAML declared objects.

LookupDependsOn()

Vrátí seznam XamlMember objektů.Returns a list of XamlMember objects. Položky v seznamu sestavují členy, u nichž existují vztahy závislosti pro pořadí inicializace vzhledem XamlMemberk tomuto.Items in the list report the members where dependency relationships for initialization order exist relative to this XamlMember.

LookupInvoker()

Vrátí, který je spojen s tímto XamlMember. XamlMemberInvokerReturns a XamlMemberInvoker that is associated with this XamlMember.

LookupIsAmbient()

Vrátí, zda XamlMember je tento parametr hlášen jako vlastnost Ambient.Returns whether this XamlMember is reported as an ambient property.

LookupIsEvent()

Vrátí, zda XamlMember Tato akce představuje událost.Returns whether this XamlMember represents an event.

LookupIsReadOnly()

Vrátí, zda XamlMember Tato funkce představuje zamýšlenou vlastnost určenou jen pro čtení.Returns whether this XamlMember represents an intended read-only property.

LookupIsReadPublic()

Vrátí, zda XamlMember Tato funkce představuje vlastnost, která má get veřejný přistupující objekt.Returns whether this XamlMember represents a property that has a public get accessor.

LookupIsUnknown()

Vrátí, zda XamlMember se jedná o člen, který nelze přeložit do záložního systému, který se používá pro řešení typu a člena.Returns whether this XamlMember represents a member that is not resolvable by the backing system that is used for type and member resolution.

LookupIsWriteOnly()

Vrátí, zda XamlMember Tato funkce představuje člena, který má set veřejný přistupující objekt, ale get ne veřejný přístupový objekt.Returns whether this XamlMember represents a member that has a public set accessor but not a public get accessor.

LookupIsWritePublic()

Vrátí, zda XamlMember Tato funkce představuje člena, který má set veřejný přistupující objekt.Returns whether this XamlMember represents a member that has a public set accessor.

LookupMarkupExtensionBracketCharacters()

Vrátí levou a pravou závorku znaků pro rozšíření značek.Returns the opening and closing bracket characters for a markup extension.

LookupTargetType()

Vrátí typ, XamlMember kde může existovat. XamlTypeReturns the XamlType of the type where the XamlMember can exist.

LookupType()

XamlType Vrátí typ, který je použit členem.Returns the XamlType of the type that is used by the member.

LookupTypeConverter()

Vrátí implementaci konvertoru typu, která je k tomuto XamlMembertypu přidružená.Returns a type converter implementation that is associated with this XamlMember.

LookupUnderlyingGetter()

Vrátí přistupující objekt, který je spojen s XamlMembertímto. getReturns a get accessor that is associated with this XamlMember.

LookupUnderlyingMember()

Vrátí systém MemberInfo typu CLR, který je spojen s tímto XamlMember.Returns a CLR type system MemberInfo that is associated with this XamlMember.

LookupUnderlyingSetter()

Vrátí přistupující objekt, který je spojen s XamlMembertímto. setReturns a set accessor that is associated with this XamlMember.

LookupValueSerializer()

Vrátí implementaci serializátoru hodnoty, která je k tomuto XamlMembertypu přidružená.Returns a value serializer implementation that is associated with this XamlMember.

MemberwiseClone()

Vytvoří kopii aktuálního Objectbez podstruktury.Creates a shallow copy of the current Object.

(Zděděno od Object)
ToString()

Vrátí řetězcovou reprezentaci tohoto XamlMemberřetězce.Returns a string representation of this XamlMember.

Operátory

Equality(XamlMember, XamlMember)

Určuje, zda dva XamlMember zadané objekty mají stejnou hodnotu.Determines whether two specified XamlMember objects have the same value.

Inequality(XamlMember, XamlMember)

Určuje, zda dva XamlMember zadané objekty mají jiné hodnoty.Determines whether two specified XamlMember objects have different values.

Platí pro

Viz také