XamlMember Klas

Definitie

Biedt de systeem-id van het XAML-type voor leden van XAML-typen. De id wordt gebruikt door XAML-lezers en XAML-schrijvers tijdens de verwerking van lidknooppunten (wanneer de XAML-lezer op een StartMemberpositie is) en ook voor algemene systeemlogica van het XAML-type.

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)
Overname
XamlMember
Afgeleid
Implementeringen

Opmerkingen

XamlMember kan drie methodologieën gebruiken voor het retourneren van informatie over een XAML-lid: standaard common language runtime (CLR) reflectie; een referentie-only reflectietechniek die interne API's aanroept die geoptimaliseerde bitvlagmen gebruiken; of het aanroepen van virtuele onderdrukkingen van de Lookup* API die wordt geleverd door mogelijke XamlMember subklassen. Voor de meeste toepassingen van .NET Framework XAML Services-API's en de XamlMember-API gebruikt u de standaard-XAML-schemacontext. De standaard XAML-schemacontext voor .NET Framework XAML Services maakt gebruik van CLR-backing voor het typesysteem. Hierdoor kunnen de XAML-lezers en XAML-schrijvers werken met elk type of lid dat is gedefinieerd in, of anderszins beschikbaar is voor, de CLR en de bijbehorende reflectietechnieken.

Opzoek*-API's en afgeleide klassen XamlMember

XamlMember definieert verschillende virtuele leden die afgeleide klassen kunnen overschrijven. Deze leden hebben namen die altijd beginnen met de tekenreeks Lookup. De rest van de API-naam verwijst vervolgens naar de eigenschap die door de virtuele methode wordt beïnvloed. Een XamlMember afgeleide klasse kan bijvoorbeeld overschrijven LookupTargetType om te beïnvloeden wat de basisgedefinieerde eigenschap TargetType retourneert in een afgeleide klasse. U kunt retourwaarden voorspellen voor dergelijke eigenschappen in XamlMember of bestaande afgeleide klassen door de documentatie voor de relevante Lookup* methoden te lezen.

Het doel van de Lookup* methoden is om een XAML-systeemextensietechniek te bieden die de XamlMember basisklasse bevat. Door de XamlMember virtuele leden af te Lookup leiden en te overschrijven, kunt u het concept van een XAML-lid definiëren voor een XAML-schema in een XAML-typesysteem zonder dat deze is gekoppeld aan de specifieke kenmerken van een systeem of technologie voor het backingtype. U kunt ook een opgegeven XAML-schemacontext onder dit schema gebruiken en nog steeds de gewenste resultaten retourneren.

Denk bijvoorbeeld aan de XamlMember eigenschap IsWritePublic. Deze eigenschap informeert bellers dat bewerkingen zoals het gebruik van een XamlWriter for serialisatie een waarde voor dit lid op een doelobject kunnen schrijven. In de standaarduitvoering wordt bepaald of het lid beschrijfbaar is met behulp van reflectietechnieken tegen de backing CLR Type en zijn leden (de MemberInfo). Daarom is het XAML-typesysteem standaard afhankelijk van het CLR-typesysteem. U kunt deze afhankelijkheid voor uw XAML-type systeemrapportage IsWritePublic echter verwijderen door de API LookupIsWritePublicte overschrijven. Binnen uw onderdrukking kunt u andere bepalingen gebruiken, zoals metagegevens die specifiek zijn voor uw technologie, een primaire opzoektabel die is geoptimaliseerd voor een vaste XAML-vocabulaire of een verscheidenheid aan andere strategieën om te bepalen of een XAML-lid beschrijfbaar is in uw XAML-woordenlijst.

XamlMember maken zonder XAML-schemacontext

De meeste constructors van XamlMember vereisen een XamlSchemaContext onderdeel van hun initialisatie. Het XamlSchemaContext is ook nodig voor veel interne XamlSchemaContext bewerkingen, zoals het verkrijgen van informatie die wordt doorgestuurd vanaf het backingtype. Wanneer u met de XamlMember API werkt, hebt u meestal een XamlSchemaContext api die beschikbaar is vanuit een omringende constructie, zoals een XamlWriter. In dit geval kunt u de XamlSchemaContext verwijzing doorgeven aan alle systeemoproepen van het XAML-type waarvoor een XAML-schemacontext is vereist.

Eén specifieke constructor, XamlMember(String, XamlType, Boolean)heeft geen XamlSchemaContext. Een XamlMember die is samengesteld met de XamlMember(String, XamlType, Boolean) handtekening, retourneert true echter voor IsUnknown.

Voor een laadpad dat betrekking heeft XamlObjectWriter, kan een dergelijk lid niet worden weggeschreven naar een objectgrafiek. Met behulp van de .NET Framework XAML-servicesimplementatie genereert de XamlObjectWriter.WriteStartMember-aanroep een XamlObjectWriterException wanneer de relevante XamlMember rapporteert true voor IsUnknown.

U moet geen waarde XamlMember maken die een waarde heeft, trueIsUnknown tenzij uw implementatie de uitzonderingen XamlObjectWritervan kan verwerken, of dat u andere manieren hebt om het XamlObjectWriter gedrag aan te passen. Een of meer van de volgende opties kunnen bijvoorbeeld waar zijn voor uw implementatie:

  • De XAML-schemacontext is later beschikbaar.
  • U gebruikt een aanroeperpatroon voor leden.
  • U overschrijft XamlObjectWriter.WriteStartMember bewust een aangepaste XAML-schrijver.

Constructors

Name Description
XamlMember(EventInfo, XamlSchemaContext, XamlMemberInvoker)

Initialiseert een nieuw exemplaar van de XamlMember klasse met behulp van het CLR-typesysteem EventInfo en een XamlSchemaContext, inclusief XamlMemberInvoker informatie.

XamlMember(EventInfo, XamlSchemaContext)

Initialiseert een nieuw exemplaar van de XamlMember klasse met behulp van het CLR-typesysteem EventInfo en een XamlSchemaContext.

XamlMember(PropertyInfo, XamlSchemaContext, XamlMemberInvoker)

Initialiseert een nieuw exemplaar van de XamlMember klasse met behulp van weerspiegeling PropertyInfo en een XamlSchemaContext, inclusief XamlMemberInvoker informatie.

XamlMember(PropertyInfo, XamlSchemaContext)

Initialiseert een nieuw exemplaar van de XamlMember klasse met behulp van het CLR-typesysteem PropertyInfo en een XamlSchemaContext.

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

Initialiseert een nieuw exemplaar van de XamlMember klasse voor een XamlMember die een koppelbare eigenschap vertegenwoordigt, inclusief XamlMemberInvoker informatie.

XamlMember(String, MethodInfo, MethodInfo, XamlSchemaContext)

Initialiseert een nieuw exemplaar van de XamlMember klasse voor een XamlMember die een koppelbare eigenschap vertegenwoordigt.

XamlMember(String, MethodInfo, XamlSchemaContext, XamlMemberInvoker)

Initialiseert een nieuw exemplaar van de XamlMember klasse voor een die XamlMember een koppelbare gebeurtenis vertegenwoordigt, inclusief XamlMemberInvoker informatie.

XamlMember(String, MethodInfo, XamlSchemaContext)

Initialiseert een nieuw exemplaar van de XamlMember klasse voor een die XamlMember een koppelbare gebeurtenis vertegenwoordigt.

XamlMember(String, XamlType, Boolean)

Initialiseert een nieuw exemplaar van de XamlMember klasse met behulp van een tekenreeksnaam en het declareren van XamlType gegevens. Een XamlMember die met deze handtekening is samengesteld, heeft aanzienlijke beperkingen.

Eigenschappen

Name Description
DeclaringType

Hiermee haalt u het XamlType type op dat het lid declareert dat aan dit XamlMemberis gekoppeld.

DeferringLoader

Hiermee haalt u een XamlValueConverter<TConverterBase> object op dat wordt gebruikt voor het uitstellen van het laden van XAML gedeclareerde objecten.

DependsOn

Hiermee haalt u een lijst XamlMember met objecten op. Deze rapporteren de leden waar afhankelijkheidsrelaties voor initialisatievolgorde bestaan ten opzichte van dit XamlMember.

Invoker

Hiermee haalt u de XamlMemberInvoker implementatie op die aan dit XamlMemberis gekoppeld.

IsAmbient

Hiermee wordt een waarde opgehaald die aangeeft of dit XamlMember wordt gerapporteerd als een omgevingseigenschap.

IsAttachable

Hiermee wordt een waarde opgehaald die aangeeft of dit XamlMember een koppelbaar lid is.

IsDirective

Hiermee wordt een waarde opgehaald die aangeeft of dit XamlMember een XAML-instructie is.

IsEvent

Hiermee wordt een waarde opgehaald die aangeeft of dit XamlMember een gebeurtenislid vertegenwoordigt.

IsNameValid

Hiermee wordt een waarde opgehaald die aangeeft of dit XamlMember wordt geïnitialiseerd met een geldige xamlName tekenreeks als de waarde Name.

IsReadOnly

Hiermee wordt een waarde opgehaald die aangeeft of dit XamlMember een alleen-lezen lid vertegenwoordigt.

IsReadPublic

Hiermee wordt een waarde opgehaald die aangeeft of dit XamlMember een lid vertegenwoordigt met een aanroepbare openbare get toegangsmedewerker.

IsUnknown

Hiermee wordt een waarde opgehaald die aangeeft of het lid niet kan worden omgezet door het backingsysteem dat wordt gebruikt voor het type en de ledenomzetting.

IsWriteOnly

Hiermee wordt een waarde opgehaald die aangeeft of dit XamlMember een alleen-schrijven-lid vertegenwoordigt.

IsWritePublic

Hiermee wordt een waarde opgehaald die aangeeft of dit XamlMember een lid vertegenwoordigt dat een aanroepbare openbare set toegangsmedewerker heeft.

MarkupExtensionBracketCharacters

Hiermee definieert u de haakjes openen en sluiten voor een markeringsextensie.

Name

Hiermee haalt u de xamlName naamtekenreeks op die deze XamlMemberdeclareert.

PreferredXamlNamespace

Hiermee haalt u de enkele XAML-naamruimte-URI op waarmee de primaire XAML-naamruimte wordt geïdentificeerd.XamlMember

SerializationVisibility

Hiermee haalt u een DesignerSerializationVisibility waarde op, die aangeeft hoe een visuele ontwerper het lid moet verwerken.

TargetType

Hiermee haalt u het XamlType type op waar de XamlMember kan bestaan.

Type

Hiermee haalt u het XamlType type op dat door het lid wordt gebruikt.

TypeConverter

Hiermee haalt u een XamlValueConverter<TConverterBase> object op dat kan worden gebruikt voor het bouwen van typeconversie van XAML gedeclareerde objecten.

UnderlyingMember

Hiermee wordt het CLR-typesysteem MemberInfo opgehaald dat beschikbaar is voor een lid dat is samengesteld door PropertyInfo, MethodInfoof EventInfo.

ValueSerializer

Hiermee haalt u een XamlValueConverter<TConverterBase> object op dat wordt gebruikt voor waardeserialisatie van XAML gedeclareerde objecten.

Methoden

Name Description
Equals(Object)

Geeft aan of het huidige object gelijk is aan een ander object.

Equals(XamlMember)

Hiermee wordt aangegeven of het huidige object gelijk is aan een ander object van hetzelfde type.

GetHashCode()

Retourneert de hashcode voor dit object.

GetType()

Hiermee haalt u de Type huidige instantie op.

(Overgenomen van Object)
GetXamlNamespaces()

Retourneert een lijst met XAML-naamruimten waar dit XAML-lid kan bestaan.

LookupCustomAttributeProvider()

Wanneer deze wordt geïmplementeerd in een afgeleide klasse, wordt een ICustomAttributeProvider implementatie geretourneerd.

LookupDeferringLoader()

Hiermee wordt een XamlValueConverter<TConverterBase> object geretourneerd dat wordt gebruikt voor het uitstellen van het laden van XAML gedeclareerde objecten.

LookupDependsOn()

Retourneert een lijst XamlMember met objecten. Items in de lijst rapporteren de leden waar afhankelijkheidsrelaties voor initialisatievolgorde bestaan ten opzichte van deze XamlMember.

LookupInvoker()

Retourneert een XamlMemberInvoker die aan dit XamlMemberis gekoppeld.

LookupIsAmbient()

Retourneert of dit XamlMember wordt gerapporteerd als een omgevingseigenschap.

LookupIsEvent()

Retourneert of dit XamlMember een gebeurtenis vertegenwoordigt.

LookupIsReadOnly()

Retourneert of dit XamlMember een beoogde eigenschap met het kenmerk Alleen-lezen vertegenwoordigt.

LookupIsReadPublic()

Retourneert of dit XamlMember een eigenschap vertegenwoordigt die een openbare get toegangsfunctie heeft.

LookupIsUnknown()

Retourneert of dit XamlMember een lid vertegenwoordigt dat niet kan worden omgezet door het backingsysteem dat wordt gebruikt voor het type en de ledenomzetting.

LookupIsWriteOnly()

Retourneert of dit XamlMember een lid vertegenwoordigt dat een openbare set toegangsfunctie heeft, maar geen openbare get toegangsfunctie.

LookupIsWritePublic()

Retourneert of dit XamlMember een lid vertegenwoordigt dat een openbare set toegangsfunctie heeft.

LookupMarkupExtensionBracketCharacters()

Retourneert de haakjes openen en sluiten voor een markeringsextensie.

LookupTargetType()

Retourneert het XamlType type waar de XamlMember kan bestaan.

LookupType()

Retourneert het XamlType type dat door het lid wordt gebruikt.

LookupTypeConverter()

Retourneert een type conversieprogramma-implementatie die aan dit XamlMemberis gekoppeld.

LookupUnderlyingGetter()

Hiermee wordt een get accessor geretourneerd die aan dit XamlMemberis gekoppeld.

LookupUnderlyingMember()

Hiermee wordt een CLR-typesysteem MemberInfo geretourneerd dat aan dit XamlMembertype is gekoppeld.

LookupUnderlyingSetter()

Hiermee wordt een set accessor geretourneerd die aan dit XamlMemberis gekoppeld.

LookupValueSerializer()

Retourneert een waardeserialisatie-implementatie die aan deze XamlMemberis gekoppeld.

MemberwiseClone()

Hiermee maakt u een ondiepe kopie van de huidige Object.

(Overgenomen van Object)
ToString()

Hiermee wordt een tekenreeksweergave van dit resultaat geretourneerd XamlMember.

Operators

Name Description
Equality(XamlMember, XamlMember)

Bepaalt of twee opgegeven XamlMember objecten dezelfde waarde hebben.

Inequality(XamlMember, XamlMember)

Bepaalt of twee opgegeven XamlMember objecten verschillende waarden hebben.

Van toepassing op

Zie ook