XamlSchemaContext Sınıf

Tanım

XAML türlerini yorumlamak veya eşlemek için yeniden kullanılabilir bir bağlam ve bunları gerçekleştiren derlemelerdeki türleri tanımlar.Defines a reusable context for interpreting or mapping XAML types, and the types in the assemblies that underlie them.

public ref class XamlSchemaContext
public class XamlSchemaContext
type XamlSchemaContext = class
Public Class XamlSchemaContext
Devralma
XamlSchemaContext

Açıklamalar

XAML şeması bağlamı, XAML için bir şema veya sözlük ve belirli bir Ayrıştırıcı uygulamasını arasında bir soyutlama katmanı sağlar.A XAML schema context provides a layer of abstraction between a schema or vocabulary for XAML, and a specific parser implementation. Şema bağlamı kavramını ekleyerek, şema farklı XAML Çözümleyicileri ile kullanılabilir ve şema bağlamı, belirli bir XAML ayrıştırıcıyla etkileşmek için gereken ayrıntıları doldurur.By inserting the concept of a schema context, the schema can be used with different XAML parsers, and the schema context fills in the details that are needed to interact with a specific XAML parser. Örneğin, XAML şeması bağlamı XAML kavramlarıyla ilgili sorgu API 'Leri ya da XAML tür sistemine CLR bağlama sağlar.For example, the XAML schema context provides query APIs that relate to XAML concepts or to the CLR binding to the XAML type system. Xaml şeması bağlamı Ayrıca, bir XAML ayrıştırıcısının bir tür yedekleme için nerede göründüğünü tanımlayan yüklü derlemelerin derleme listesini korumadan da sorumludur.The XAML schema context is also responsible for maintaining the assembly list of loaded assemblies, which defines where a XAML parser looks for backing types.

Devralanlara Notlar

Bir AppDomain ' de, XamlSchemaContext tam ve kısmi güven çağıranlarını içeren birden çok çağıranlar arasında paylaşılabilir.In an AppDomain, a XamlSchemaContext can be shared between multiple callers, which include both full and partial trust callers. WPF uygulama modelinin bölümleri için XAML yüklemeye kısmi güven erişimi sağlayan WPF gibi çerçeveler içinde bu durum mevcuttur.This situation exists in frameworks such as WPF, which provide partial-trust access to XAML loading for portions of the WPF application model. Varsayılan XamlSchemaContext uygulama, tüm özelliklerini ve ayarlarını sabit tutarak bu senaryoya karşı koruma sağlar.The default XamlSchemaContext implementation provides safeguards in this scenario by keeping all its properties and settings immutable. Türetilmiş uygulamalar aynı zamanda bir XAML şeması bağlamının özellikleri ve ayarları için bu dengesgöz önünde bulundurulması gereken bu modeli takip etmelidir.Derived implementations should also consider following this model of immutability for properties and settings of a XAML schema context.

XamlSchemaContextTemel sınıf, aramalarda dışarıdan observable yan etkileri olmayacak şekilde tasarlanmıştır.The XamlSchemaContext base class is designed so that lookups have no externally observable side effects. XamlSchemaContextYa da gibi temel sınıftaki API 'ler tarafından başvurulan türler, XamlType XamlMember aramalardan hiçbir yan etki oluşturmaz.The types that are referenced by XamlSchemaContext APIs in the base class, such as XamlType or XamlMember, also produce no side effects from lookups. Şema belirlenmesi için gereken tüm veriler, oluşturma ve ayarlarından kullanılabilir olmalıdır AppDomain .All data that is needed to make a schema determination should be available from the construction and settings of the AppDomain. Hiçbir arama API 'si açıkça geçilen hizmetlere bağlı olmadığına dikkat edin; girişleri yalnızca dize girişi kullanır.Notice that no lookup APIs rely on explicitly passed-in services; their input relies on string input only.

Temel XamlSchemaContext sınıf ve ve temel XamlType XamlMember uygulamalarında tüm iş parçacığı güvenlidir.The XamlSchemaContext base class, and XamlType and XamlMember are all thread safe in their base implementations. XamlSchemaContextVe gıbı xaml türü sistem sınıflarından türetirsiniz veya türetirsiniz XamlType XamlMember , sınıflarınızın iş parçacığı güvenli olarak davranıp davranmayacağını seçebilirsiniz.If you derive from XamlSchemaContext or derive XAML type system classes such as XamlType and XamlMember , you can choose whether your classes will behave as thread safe.

Oluşturucular

XamlSchemaContext()

XamlSchemaContext sınıfının yeni bir örneğini başlatır.Initializes a new instance of the XamlSchemaContext class.

XamlSchemaContext(IEnumerable<Assembly>)

XamlSchemaContextBir başvuru derlemeleri kümesine göre sınıfının yeni bir örneğini başlatır.Initializes a new instance of the XamlSchemaContext class, based on a set of reference assemblies.

XamlSchemaContext(IEnumerable<Assembly>, XamlSchemaContextSettings)

XamlSchemaContextBir başvuru derlemeleri kümesine ve bir ayarlar nesnesine göre sınıfının yeni bir örneğini başlatır.Initializes a new instance of the XamlSchemaContext class, based on a set of reference assemblies and a settings object.

XamlSchemaContext(XamlSchemaContextSettings)

XamlSchemaContextBir ayarlar nesnesine göre sınıfının yeni bir örneğini başlatır.Initializes a new instance of the XamlSchemaContext class, based on a settings object.

Özellikler

FullyQualifyAssemblyNamesInClrNamespaces

Bir XAML şemasının ve bağlamının, arama API 'SI tarafından döndürülen değerlerde tam olarak nitelenmiş derleme adları kullanıp kullanmadığını belirten bir değer alır.Gets a value that specifies whether a XAML schema and its context use fully qualified assembly names in the values that are returned by the lookup API.

ReferenceAssemblies

XAML şema bağlamı için sıralanabilir bir başvuru derlemeleri kümesi alır.Gets an enumerable set of reference assemblies for the XAML schema context.

SupportMarkupExtensionsWithDuplicateArity

Bir XAML şemasının ve bağlamının, aynı parametre sayısına (giriş parametrelerinin sayısı) sahip iki Oluşturucusu olan biçimlendirme uzantılarını destekleyip desteklemediğini belirten bir değer alır.Gets a value that specifies whether a XAML schema and its context support markup extensions that have two constructors with the same arity (number of input parameters).

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.Determines whether the specified object is equal to the current object.

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

Çağrılmayan standart olmayan bir Finalize uygulama sağlar Dispose .Provides a nonstandard Finalize implementation that does not invoke Dispose.

GetAllXamlNamespaces()

Bu tarafından tutulan derlemeleri arar XamlSchemaContext ve bir ad alanı kümesi döndürür.Searches the assemblies that are held by this XamlSchemaContext and returns a set of namespaces.

GetAllXamlTypes(String)

Bu tarafından tutulan derlemeleri arar XamlSchemaContext ve BELIRTILEN xaml ad alanından bir tür kümesi döndürür.Searches the assemblies that are held by this XamlSchemaContext and returns a set of types from the specified XAML namespace.

GetHashCode()

Varsayılan karma işlevi olarak işlev görür.Serves as the default hash function.

(Devralındığı yer: Object)
GetPreferredPrefix(String)

Belirtilen XAML ad alanını eşleştirdiklerinde kullanıcıları kullanması için tercih edilen önek olarak bildirilen bir dize alır.Gets a string that is reported as the preferred prefix for consumers to use when they map the specified XAML namespace.

GetType()

TypeGeçerli örneği alır.Gets the Type of the current instance.

(Devralındığı yer: Object)
GetValueConverter<TConverterBase>(Type, XamlType)

İstenen öğesine dönüştürebileceğiniz bir değer dönüştürücüsü döndürür targetType .Returns a value converter that can convert to the requested targetType.

GetXamlDirective(String, String)

XamlDirectiveXaml dili ya da belirli bir uygulama için bir yönergeyi temsil eden bir değer döndürür.Returns a XamlDirective value that represents a directive, either for the XAML language or for a particular implementation.

GetXamlType(String, String, XamlType[])

XamlTypeXaml ad alanını ve tür adı için bir dizeyi temel alan bir döndürür.Returns a XamlType that is based on a XAML namespace and a string for the type name. Bu imza, istenen türün genel bir tür olduğu durumlarda tür bağımsız değişkenlerini belirtebilir.This signature can specify the type arguments for cases where the desired type is a generic type.

GetXamlType(Type)

XamlTypeCLR tür tanımlayıcısını temel alan bir döndürür.Returns a XamlType that is based on a CLR type identifier.

GetXamlType(XamlTypeName)

XamlTypeXaml sistem türü adını temel alan bir döndürür.Returns a XamlType that is based on a XAML system type name.

MemberwiseClone()

Geçerli bir basit kopyasını oluşturur Object .Creates a shallow copy of the current Object.

(Devralındığı yer: Object)
OnAssemblyResolve(String)

İşlemler, içerdiği XAML ad alanlarını çözümlemek için gereken bir derlemeyi çözümlemek için bu şema bağlamını kullanırken çağırılır.Called when operations use this schema context to resolve an assembly that is required in order to resolve the XAML namespaces that it contains.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.Returns a string that represents the current object.

(Devralındığı yer: Object)
TryGetCompatibleXamlNamespace(String, String)

Uyumlu XAML ad alanı için bir isteğin başarısını veya başarısızlığını döndürür.Returns the success or failure of a request for a compatible XAML namespace. Başarılı bir istek, XAML ad alanını out parametresi olarak bildirir.A successful request reports that XAML namespace as an out parameter.

Şunlara uygulanır