Aracılığıyla paylaş


x:Subclass Yönergesi

Ayrıca sağlandığında x:Class XAML işaretleme derleme davranışını değiştirir. öğesini temel alan x:Classkısmi bir sınıf oluşturmak yerine, sağlanan x:Class bir ara sınıf olarak oluşturulur ve ardından sağlanan türetilmiş sınıfınızın temel x:Classalınması beklenir.

XAML Öznitelik Kullanımı

<object x:Class="namespace.classname" x:Subclass="subclassNamespace.subclassName">
   ...
</object>

XAML Değerleri

Değer Tanım
namespace isteğe bağlı. içeren classnamebir CLR ad alanı belirtir. Belirtilirsenamespace, nokta (.) ve classnameöğesini ayırırnamespace.
classname Gerekli. Yüklenen XAML'yi ve bu XAML için arka planınızı bağlayan kısmi sınıfın CLR adını belirtir. Bkz. Açıklamalar.
subclassNamespace isteğe bağlı. Her ad alanının diğer ad alanını çözümleyebildiğinden namespace farklı olabilir. içeren subclassNamebir CLR ad alanı belirtir. BelirtilirsesubclassName, nokta (.) ve subclassNameöğesini ayırırsubclassNamespace.
subclassName Gerekli. Alt sınıfın CLR adını belirtir.

Bağımlılıklar

x:Class Yönergesi de aynı nesne üzerinde sağlanmalıdır ve bu nesne XAML üretiminin kök öğesi olmalıdır.

Açıklamalar

x:Subclass kullanım öncelikli olarak kısmi sınıf bildirimlerini desteklemeyen diller için tasarlanmıştır.

olarak x:Subclass kullanılan sınıf iç içe geçmiş bir sınıf olamaz ve x:Subclass "Bağımlılıklar" bölümünde açıklandığı gibi kök nesneye başvurmalıdır.

Aksi takdirde, kavramsal anlamı x:Subclass bir .NET XAML Hizmetleri uygulaması tarafından tanımlanmamıştır. Bunun nedeni, .NET XAML Hizmetleri davranışının XAML işaretleme ve yedekleme kodunun bağlı olduğu genel programlama modelini belirtmemesidir. ve ile ilgili x:Class diğer kavramların uygulamaları, XAML işaretlemesi, derlenmiş işaretleme ve x:Subclass CLR tabanlı arka planda kod bağlamayı tanımlamak için programlama modellerini veya uygulama modellerini kullanan belirli çerçeveler tarafından gerçekleştirilir. Her çerçevenin, bazı davranışları veya derleme ortamına eklenmesi gereken belirli bileşenleri etkinleştiren kendi derleme eylemleri olabilir. Bir çerçeve içinde, derleme eylemleri arka planda kod için kullanılan belirli CLR diline göre de farklılık gösterebilir.

WPF Kullanım Notları

x:Subclass bir sayfa kökünde veya Application zaten olan x:Classuygulama tanımındaki kökte olabilir. x:Subclass Sayfa veya uygulama kökü dışındaki herhangi bir öğede bildirimde bulunma veya var olmayan x:Class bir yerde belirtme, derleme zamanı hatasına neden olur.

Senaryo için doğru çalışan türetilmiş sınıflar x:Subclass oluşturmak oldukça karmaşıktır. Ara dosyaları (.xaml dosya adlarını içeren adlarla, işaretleme derlemesi ile projenizin obj klasöründe üretilen .g dosyaları) incelemeniz gerekebilir. Bu ara dosyalar, derlenen uygulamadaki birleştirilmiş kısmi sınıflardaki belirli programlama yapılarının kaynağını belirlemenize yardımcı olabilir.

Türetilmiş sınıftaki olay işleyicileri, derleme sırasında ara sınıfta oluşturulan işleyicilerin saplamalarını geçersiz kılmak için (Friend Overrides Microsoft Visual Basic'te) olmalıdır internal override . Aksi takdirde türetilmiş sınıf uygulamaları ara sınıf uygulamasını gizler (gölgelenir) ve ara sınıf işleyicileri çağrılmıyor.

hem x:Subclasshem de x:Class tanımladığınızda, tarafından x:Classbaşvuruda bulunu olan sınıfı için herhangi bir uygulama sağlamanız gerekmez. Derleyicinin x:Class ara dosyalarda oluşturduğu sınıf için bazı yönergelere sahip olması için yalnızca özniteliği aracılığıyla bir ad vermeniz gerekir (derleyici bu durumda varsayılan bir ad seçmez). Sınıfına x:Class bir uygulama verebilirsiniz; ancak bu, hem x:Subclasshem de x:Class kullanmak için tipik bir senaryo değildir.

Ayrıca bkz.