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.

Ayrıca bkz.