MarkupExtension Sınıf
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
.NET XAML Hizmetleri ve diğer XAML okuyucuları ve XAML yazıcıları tarafından desteklenebilir XAML işaretleme uzantısı uygulamaları için temel bir sınıf sağlar.
public ref class MarkupExtension abstract
public abstract class MarkupExtension
type MarkupExtension = class
Public MustInherit Class MarkupExtension
- Devralma
-
MarkupExtension
- Türetilmiş
Açıklamalar
İşaretlemesi uzantıları, XAML'deki dize öznitelik değerlerinin veya işaretleme öğelerinin girişine göre nesneleri çağıranlara döndürür. İşaretlemeyi uzantıları nesneleri yalnızca tür dönüştürücülerinin başaramaktan daha karmaşık bir şekilde döndürür. Bir tür veya üyenin kendisiyle ilişkilendirilmiş bir tür dönüştürücü uygulaması olduğundan XAML nesne yazıcısı bir tür dönüştürücüsü çağırır. Başvurunun CLR çerçevesinden, bir türün veya üyenin özniteliklendirildiğini TypeConverterAttribute gösterir. XAML türü sistem perspektifinden bakıldığında bu, bir XAML türünün veya XAML üyesinin özelliği için bir değere TypeConverter sahip olduğu anlamına gelir. Tür dönüştürücüsünün çağrılması tür veya özellik tanımına bağlıdır ve bu durumlar için her zaman XAML işlemesi tarafından çağrılır. Buna karşılık, işaretleme uzantısı daha çok kullanıcı kodunun ve kullanıcı tarafından üretilen işaretlemenin denetimi altındadır ve bir uygulama senaryosu tarafından talep edilen her durumda uygulanabilir. bir işaretleme uzantısı çağrılabilir ve işaretleme uzantısının dönüş türü bu değere atanabilir olduğu sürece farklı tür üyesi değerleri ayarlamak için kullanılabilir.
Özel işaretleme uzantısı oluşturma hakkında bilgi için bkz ProvideValue. . Genel olarak işaretleme uzantıları hakkında daha fazla bilgi için bkz. XAML için Biçimlendirme Uzantılarına Genel Bakış. WPF üzerinde derleme yapıyorsanız ve XAML için işaretleme uzantıları kullanıyorsanız veya oluşturuyorsanız, diğer ilgili bilgiler biçimlendirme uzantıları ve WPF XAML konusunda bulunabilir.
Her ProvideValue işaretleme uzantısı uygulamasının yöntemi, çalışma zamanında bağlam sağlayabilen bir IServiceProvider kullanabilir. Bu IServiceProvider daha sonra veya IXamlTypeResolvergibi IProvideValueTarget bilgileri geçiren belirli hizmetler için sorgulanır. Bir işaretleme uzantısının hizmet bağlamları hakkında daha fazla bilgi için bkz. Tür Dönüştürücüleri ve İşaretleme Uzantıları için Kullanılabilir Hizmet Bağlamları.
Tüketicileri işaretleme uzantısının ProvideValue uygulamasından kullanılabilen en belirli dönüş türü hakkında bilgilendirmek için türetilmiş sınıflar ile MarkupExtensionReturnTypeAttribute ilişkilendirilmelidir.
Oluşturucular
| Name | Description |
|---|---|
| MarkupExtension() |
sınıfından MarkupExtensiontüretilen yeni bir sınıf örneği başlatır. |
Yöntemler
| Name | Description |
|---|---|
| Equals(Object) |
Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler. (Devralındığı yer: Object) |
| GetHashCode() |
Varsayılan karma işlevi işlevi görür. (Devralındığı yer: Object) |
| GetType() |
Geçerli örneğin Type alır. (Devralındığı yer: Object) |
| MemberwiseClone() |
Geçerli Objectbasit bir kopyasını oluşturur. (Devralındığı yer: Object) |
| ProvideValue(IServiceProvider) |
Türetilmiş bir sınıfta uygulandığında, bu işaretleme uzantısı için hedef özelliğin değeri olarak sağlanan bir nesne döndürür. |
| ToString() |
Geçerli nesneyi temsil eden bir dize döndürür. (Devralındığı yer: Object) |