x:ClassModifier Yönergesi
Ayrıca sağlandığında XAML derleme davranışını değiştirir x:Class . Özellikle, erişim düzeyine sahip bir kısmi oluşturmak yerine classPublic (varsayılan), belirtilen bir x:ClassNotPublic erişim düzeyiyle oluşturulur. Bu davranış, oluşturulan derlemelerdeki sınıfın erişim düzeyini etkiler.
XAML Öznitelik Kullanımı
<object x:Class="namespace.classname" x:ClassModifier="NotPublic">
...
</object>
XAML Değerleri
| NotPublic | Belirtmek için geçirilecek tam dize TypeAttributes.PublicTypeAttributes.NotPublic , kullandığınız arka plan kod programlama diline bağlı olarak farklılık gösterir. Bkz. açıklamalar. |
Bağımlılıklar
X:Class aynı öğe üzerinde de sağlanmalıdır ve bu öğenin bir sayfada kök öğe olması gerekir. Daha fazla bilgi için bkz. [ms-xaml] Section 4.3.1.8.
Açıklamalar
x:ClassModifier.Net xaml Hizmetleri kullanımındaki değeri programlama diline göre farklılık gösterir. Kullanılacak dize, her dilin CodeDomProvider ve için anlamlarını ve TypeAttributes.PublicTypeAttributes.NotPublic bu dilin büyük/küçük harfe duyarlı olup olmadığını tanımlamak için döndürdüğü tür Dönüştürücülerine bağlıdır.
C# için, atamak için geçirilecek dize TypeAttributes.NotPublic olur
internal.Microsoft Visual Basic .net için, atamak için geçirilecek dize TypeAttributes.NotPublic olur
Friend.C++/CLı için XAML derlemeyi destekleyen bir hedef yoktur; Bu nedenle, geçirilecek değer belirtilmemiş.
ayrıca, TypeAttributes.Public ( public C# ' de Visual Basic) öğesini de belirtebilirsiniz Public ; ancak, TypeAttributes.Public varsayılan davranış zaten olduğu için, belirtme daha seyrek yapılır TypeAttributes.Public .
C# ' de olduğu gibi eşdeğer Kullanıcı kodu erişim düzeyi kısıtlamalarına sahip diğer değerler, privatex:ClassModifier iç içe geçmiş sınıf başvuruları xaml 'de desteklenmediğinden, bu nedenle TypeAttributes.NotPublic değiştirici aynı etkiye sahiptir.
Güvenlik notları
İçinde bildirildiği gibi erişim düzeyi x:ClassModifier , hala belirli çerçeveler ve bunların özelliklerine göre yoruma tabidir. WPF, bir x:ClassModifierinternal paket URI başvurusu aracılığıyla bir WPF kaynağından başvuruluyorsa, türü yükleme ve örnek oluşturma özelliklerini içerir. Bu durumun bir sonucu ve diğer çerçeveler tarafından uygulandığı gibi diğerleri, x:ClassModifier olası tüm örnek oluşturma girişimlerini engellemek için özel olarak açık değildir.