XamlMember Sınıf

Tanım

XAML türlerinin üyeleri için XAML türü sistem tanımlayıcısını sağlar. Tanımlayıcı, üye düğümlerinin işlenmesi sırasında (XAML okuyucu bir StartMemberüzerinde konumlandırıldığında) ve genel XAML türü sistem mantığı için XAML okuyucuları ve XAML yazıcıları tarafından kullanılır.

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)
Devralma
XamlMember
Türetilmiş
Uygulamalar

Açıklamalar

XamlMemberXAML üyesi hakkında bilgi döndürmek için üç yöntem kullanabilir: standart ortak dil çalışma zamanı (CLR) yansıması; iyileştirilmiş bit bayrakları kullanan iç API'leri çağıran yalnızca başvuru yansıma tekniği; veya olası XamlMember alt sınıflar tarafından sağlanan API'nin Lookup* sanal geçersiz kılmalarını çağırma. .NET Framework XAML Hizmetleri API'lerinin ve API'nin XamlMember çoğu kullanımı için varsayılan XAML şema bağlamını kullanırsınız. .NET Framework XAML Hizmetleri için varsayılan XAML şeması bağlamı, tür sistemi için CLR desteği kullanır. Bu, XAML okuyucularının ve XAML yazıcılarının CLR ve yansıma tekniklerinde tanımlanan veya başka bir şekilde kullanılabilen herhangi bir tür veya üyeyle çalışmasını sağlar.

Lookup* API'leri ve XamlMember Türetilmiş Sınıfları

XamlMember türetilmiş sınıfların geçersiz kabileceği birkaç sanal üye tanımlar. Bu üyelerin her zaman dizesiyle Lookupbaşlayan adları vardır. API adının geri kalanı daha sonra sanal yöntemin etkilediği özelliğe başvurur. Örneğin, türetilmiş bir XamlMember sınıf, temel tanımlı özelliğin türetilmiş bir sınıfta döndürdüğü işlevi TargetType etkilemek için geçersiz kılmış LookupTargetType olabilir. İlgili Lookup* yöntemlerin belgelerini okuyarak veya mevcut türetilmiş sınıflarda XamlMember bu tür özellikler için dönüş değerlerini tahmin edebilirsiniz.

Yöntemlerin Lookup* amacı, temel sınıfı içeren bir XAML türü sistem uzantısı tekniği sağlamaktır XamlMember . Sanal üyelerden XamlMember türeterek ve sanal üyeleri geçersiz kılarak Lookup , bir XAML türü sistemindeki bir XAML şeması için bir XAML üyesi kavramını, bir yedekleme türü sisteminin veya teknolojisinin özelliklerine bağlı kalmadan tanımlayabilirsiniz. Ayrıca bu şema altında sağlanan bir XAML şeması bağlamını kullanabilir ve yine de istediğiniz sonuçları döndürebilirsiniz.

Örneğin özelliğini IsWritePublicgöz önünde bulundurunXamlMember. Bu özellik, çağıranları serileştirme için kullanma XamlWriter gibi işlemlerin hedef nesnede bu üye için bir değer yazabileceğini bildirir. Varsayılan uygulamada, üyenin yazılabilir olup olmadığının belirlenmesi, arka plandaki CLR Type ve üyelerine karşı yansıma teknikleri kullanılarak yapılır (. MemberInfo). Bu nedenle, varsayılan olarak, XAML türü sistemi CLR tür sistemine bağlıdır. Ancak, API'yi LookupIsWritePublicgeçersiz kılarak XAML türü sistem raporlamanız IsWritePublic için bu bağımlılığı kaldırabilirsiniz. Geçersiz kılma işleminizde, teknolojinize özgü meta veriler, sabit bir XAML sözlüğü için iyileştirilmiş bir birincil arama tablosu veya XAML üyesinin XAML sözlüğünüzde yazılabilir olup olmadığını belirlemek için çeşitli başka stratejiler gibi diğer belirlemeleri kullanabilirsiniz.

XAML Şema Bağlamı Olmadan XamlMember Oluşturma

oluşturucularının XamlMember çoğu, başlatmalarının bir parçası olarak gerektirir XamlSchemaContext . XamlSchemaContext, yedekleme türünden iletilen bilgileri alma gibi birçok iç XamlSchemaContext işlem için de gereklidir. API ile XamlMember çalışırken, genellikle gibi çevresindeki bir yapıdan kullanılabilen bir XamlWriteröğesine sahipsinizdirXamlSchemaContext. Bu durumda, başvuruyu bir XAML şema bağlamı XamlSchemaContext gerektiren tüm XAML türü sistem çağrılarına geçirebilirsiniz.

Belirli bir XamlSchemaContextoluşturucu olan XamlMember(String, XamlType, Boolean), gerektirmez. Ancak, imzası ile XamlMember(String, XamlType, Boolean) birlikte yapılan bir XamlMember için IsUnknowndöndürürtrue.

içeren XamlObjectWriterbir yük yolu için, böyle bir üye bir nesne grafı içine yazılamaz. .NET Framework XAML hizmetleri uygulamasını kullanarak çağrısı için XamlObjectWriter.WriteStartMember ilgili raporlara IsUnknowntrue bir oluşturur XamlObjectWriterException XamlMember.

Uygulamanız uygulamasından gelen XamlObjectWriterözel durumları işleyemedikçe veya davranışı ayarlamak XamlObjectWriter için IsUnknown başka yollarınız yoksa değeri olan bir true oluşturmamalısınızXamlMember. Örneğin, uygulamanız için aşağıdakilerden biri veya daha fazlası doğru olabilir:

  • XAML şema bağlamı daha sonra kullanılabilir.
  • Üye çağırıcı deseni kullanırsınız.
  • Özel bir XAML yazıcısında kasıtlı olarak geçersiz kılarsınız XamlObjectWriter.WriteStartMember .

Oluşturucular

XamlMember(EventInfo, XamlSchemaContext)

CLR tür sistemi EventInfo ve kullanarak sınıfının yeni bir XamlSchemaContextörneğini XamlMember başlatır.

XamlMember(EventInfo, XamlSchemaContext, XamlMemberInvoker)

CLR tür sistemini EventInfo ve bilgilerini içeren XamlMemberInvoker bir kullanarak sınıfının yeni bir XamlSchemaContextörneğini XamlMember başlatır.

XamlMember(PropertyInfo, XamlSchemaContext)

CLR tür sistemi PropertyInfo ve kullanarak sınıfının yeni bir XamlSchemaContextörneğini XamlMember başlatır.

XamlMember(PropertyInfo, XamlSchemaContext, XamlMemberInvoker)

yansımasını ve bilgilerini içeren XamlMemberInvoker bir kullanarak PropertyInfo sınıfının yeni bir XamlSchemaContextörneğini XamlMember başlatır.

XamlMember(String, MethodInfo, MethodInfo, XamlSchemaContext)

eklenebilir bir özelliği temsil eden için XamlMember sınıfının yeni bir örneğini XamlMember başlatır.

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

eklenebilir bir özelliği temsil eden için XamlMember sınıfının yeni bir örneğini XamlMember başlatır.XamlMemberInvoker

XamlMember(String, MethodInfo, XamlSchemaContext)

eklenebilir bir olayı temsil eden için XamlMember sınıfının yeni bir örneğini XamlMember başlatır.

XamlMember(String, MethodInfo, XamlSchemaContext, XamlMemberInvoker)

bilgileri de dahil olmak üzere XamlMemberInvoker eklenebilir bir olayı temsil eden için XamlMember sınıfının yeni bir örneğini XamlMember başlatır.

XamlMember(String, XamlType, Boolean)

Dize adı kullanarak ve bilgi bildirerek XamlType sınıfının yeni bir örneğini XamlMember başlatır. XamlMember Bu imza ile yapılan bir önemli sınırlamaları vardır.

Özellikler

DeclaringType

XamlType Bu XamlMemberile ilişkili üyeyi bildiren türü için öğesini alır.

DeferringLoader

XAML bildirilen nesnelerinin ertelenmiş yüklenmesi için kullanılan bir XamlValueConverter<TConverterBase> nesnesi alır.

DependsOn

Nesnelerin listesini XamlMember alır. Bunlar, başlatma sırası için bağımlılık ilişkilerinin bu XamlMemberöğesine göre mevcut olduğu üyeleri rapor eder.

Invoker

XamlMemberInvoker Bu XamlMemberile ilişkili uygulamayı alır.

IsAmbient

Bunun XamlMember bir ortam özelliği olarak bildirilip bildirildiğini belirten bir değer alır.

IsAttachable

Bunun XamlMember eklenebilir üye olup olmadığını gösteren bir değer alır.

IsDirective

Bunun XamlMember bir XAML yönergesi olup olmadığını gösteren bir değer alır.

IsEvent

Bunun XamlMember bir olay üyesini temsil edip etmediğini gösteren bir değer alır.

IsNameValid

Bunun XamlMember olarak geçerli xamlName bir dizeyle Namebaşlatılıp başlatılmadığını belirten bir değer alır.

IsReadOnly

Bunun XamlMember salt okunur bir üyeyi temsil edip etmediğini gösteren bir değer alır.

IsReadPublic

Bunun XamlMember çağrılabilen ortak get erişimciye sahip bir üyeyi temsil edip etmediğini gösteren bir değer alır.

IsUnknown

Üyenin tür ve üye çözümlemesi için kullanılan yedekleme sistemi tarafından çözümlenemeyeceğini belirten bir değer alır.

IsWriteOnly

Bunun XamlMember salt yazma üyesini temsil edip etmediğini gösteren bir değer alır.

IsWritePublic

Bunun XamlMember çağrılabilen ortak set erişimciye sahip bir üyeyi temsil edip etmediğini gösteren bir değer alır.

MarkupExtensionBracketCharacters

Biçimlendirme uzantısının açma ve kapatma köşeli ayraç karakterlerini tanımlar.

Name

xamlName Bunu XamlMemberbildiren ad dizesini alır.

PreferredXamlNamespace

Bu XamlMemberiçin birincil XAML ad alanını tanımlayan tek XAML ad alanı URI'sini alır.

SerializationVisibility

Görsel tasarımcının üyeyi nasıl işlemesi gerektiğini gösteren bir DesignerSerializationVisibility değer alır.

TargetType

XamlType öğesinin bulunabileceği türün türünü XamlMember alır.

Type

XamlType Üye tarafından kullanılan türün türünü alır.

TypeConverter

Bildirilen XAML nesnelerinin tür dönüştürme yapısı için kullanılabilecek bir XamlValueConverter<TConverterBase> nesnesi alır.

UnderlyingMember

, MethodInfoveya EventInfotarafından PropertyInfooluşturulduğunda bir üye için kullanılabilen CLR tür sistemini MemberInfo alır.

ValueSerializer

Bildirilen XAML nesnelerinin değer serileştirmesi için kullanılan bir XamlValueConverter<TConverterBase> nesnesi alır.

Yöntemler

Equals(Object)

Geçerli nesnenin başka bir nesneye eşit olup olmadığını gösterir.

Equals(XamlMember)

Geçerli nesnenin aynı türdeki başka bir nesneye eşit olup olmadığını gösterir.

GetHashCode()

Bu nesnenin karma kodunu döndürür.

GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
GetXamlNamespaces()

Bu XAML üyesinin bulunabileceği XAML ad alanlarının listesini döndürür.

LookupCustomAttributeProvider()

Türetilmiş bir sınıfta uygulandığında bir ICustomAttributeProvider uygulama döndürür.

LookupDeferringLoader()

XAML tarafından bildirilen nesnelerin ertelenmiş yüklenmesi için kullanılan bir XamlValueConverter<TConverterBase> nesnesi döndürür.

LookupDependsOn()

Nesnelerin listesini XamlMember döndürür. Listedeki öğeler, başlatma sırası için bağımlılık ilişkilerinin bu XamlMemberöğesine göre var olduğu üyeleri rapor eder.

LookupInvoker()

Bu XamlMemberile ilişkili bir XamlMemberInvoker döndürür.

LookupIsAmbient()

Bunun XamlMember bir ortam özelliği olarak bildirilip bildirmediğini döndürür.

LookupIsEvent()

Bunun XamlMember bir olayı temsil edip etmediğini döndürür.

LookupIsReadOnly()

Bunun XamlMember hedeflenen bir salt okunur özelliği temsil edip etmediğini döndürür.

LookupIsReadPublic()

Bunun XamlMember ortak get erişimciye sahip bir özelliği temsil edip etmediğini döndürür.

LookupIsUnknown()

Bunun XamlMember , tür ve üye çözümlemesi için kullanılan yedekleme sistemi tarafından çözümlenemeyen bir üyeyi temsil edip etmediğini döndürür.

LookupIsWriteOnly()

Bunun XamlMember ortak erişimciye sahip olan ancak ortak set erişimci olmayan bir get üyeyi temsil edip etmediğini döndürür.

LookupIsWritePublic()

Bunun XamlMember ortak set erişimciye sahip bir üyeyi temsil edip etmediğini döndürür.

LookupMarkupExtensionBracketCharacters()

İşaretlemeyi genişletme için açma ve kapatma köşeli ayraç karakterlerini döndürür.

LookupTargetType()

XamlType öğesinin bulunabileceği türü XamlMember döndürür.

LookupType()

XamlType Üye tarafından kullanılan türü döndürür.

LookupTypeConverter()

Bu XamlMemberile ilişkili bir tür dönüştürücü uygulaması döndürür.

LookupUnderlyingGetter()

Bu XamlMemberile ilişkili bir get erişimci döndürür.

LookupUnderlyingMember()

Bu XamlMemberile ilişkilendirilmiş bir CLR tür sistemi MemberInfo döndürür.

LookupUnderlyingSetter()

Bu XamlMemberile ilişkili bir set erişimci döndürür.

LookupValueSerializer()

Bu XamlMemberile ilişkili bir değer serileştirici uygulaması döndürür.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Bu XamlMemberöğesinin dize gösterimini döndürür.

İşleçler

Equality(XamlMember, XamlMember)

Belirtilen XamlMember iki nesnenin aynı değere sahip olup olmadığını belirler.

Inequality(XamlMember, XamlMember)

Belirtilen XamlMember iki nesnenin farklı değerlere sahip olup olmadığını belirler.

Şunlara uygulanır

Ayrıca bkz.