XAML ad alanları
XAML, ad alanı bildirimleri için XML özniteliğini kullanır xmlns
. Her zaman bir XAML dosyasının kök öğesi içinde olan iki XAML ad alanı bildirimi vardır. İlki varsayılan ad alanını tanımlar:
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
Varsayılan ad alanı, ön eki olmayan XAML dosyasında tanımlanan öğelerin , Labelve Buttongibi ContentPage.NET Çok Platformlu Uygulama Kullanıcı Arabirimi (.NET MAUI) sınıflarına başvurduğunu belirtir.
İkinci ad alanı bildirimi ön ekini x
kullanır:
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
XAML, varsayılan olmayan ad alanlarını bildirmek için ön ekleri kullanır ve ön ek ad alanı içindeki türlere başvururken kullanılır. Ad alanı bildirimi, x
XAML'de bir ön eki x
ile tanımlanan öğelerin XAML'ye (özellikle 2009 XAML belirtimi) yönelik öğeler ve öznitelikler için kullanıldığını belirtir.
Aşağıdaki tabloda .NET MAUI tarafından desteklenen yapılar özetlenmektedir x
:
Oluştur | Açıklama |
---|---|
x:Arguments |
Varsayılan olmayan bir oluşturucu veya fabrika yöntemi nesne bildirimi için oluşturucu bağımsız değişkenlerini belirtir. |
x:Class |
XAML'de tanımlanan bir sınıfın ad alanını ve sınıf adını belirtir. Sınıf adı arka planda kod dosyasının sınıf adıyla eşleşmelidir. Bu yapı yalnızca bir XAML dosyasının kök öğesinde görünebilir. |
x:ClassModifier |
Derlemede oluşturulan sınıfın erişim düzeyini belirtir. |
x:DataType |
XAML öğesinin ve alt öğelerinin bağlanacağı nesnenin türünü belirtir. |
x:FactoryMethod |
Bir nesneyi başlatmak için kullanılabilecek bir fabrika yöntemi belirtir. |
x:FieldModifier |
Adlandırılmış XAML öğeleri için oluşturulan alanların erişim düzeyini belirtir. |
x:Key |
içindeki her kaynak ResourceDictionaryiçin benzersiz bir kullanıcı tanımlı anahtar belirtir. Anahtarın değeri XAML kaynağını almak için kullanılır ve genellikle işaretleme uzantısı için StaticResource bağımsız değişken olarak kullanılır. |
x:Name |
XAML öğesi için bir çalışma zamanı nesne adı belirtir. Ayar x:Name , kodda değişken bildirmeye benzer. |
x:TypeArguments |
Bir genel türün oluşturucusunun genel tür bağımsız değişkenlerini belirtir. |
Özniteliği hakkında x:ClassModifier
daha fazla bilgi için bkz . Sınıf değiştiricileri. Özniteliği hakkında x:DataType
daha fazla bilgi için bkz . Derlenmiş bağlamalar. Öznitelik hakkında x:FieldModifier
daha fazla bilgi için bkz . Alan değiştiricileri. ve öznitelikleri hakkında x:Arguments
daha fazla bilgi için bkz. Bağımsız değişkenleri geçirme.x:FactoryMethod
Özniteliği hakkında x:TypeArguments
daha fazla bilgi için bkz . Genel değerler.
Not
.NET MAUI, yukarıda listelenen yapılara ek olarak ad alanı ön eki aracılığıyla x
kullanılabilecek işaretleme uzantılarını da içerir. Daha fazla bilgi için bkz . XAML biçimlendirme uzantılarını kullanma.
XAML'de ad alanı bildirimleri üst öğeden alt öğeye devralır. Bu nedenle, bir XAML dosyasının kök öğesinde bir ad alanı tanımlarken, bu dosyadaki tüm öğeler ad alanı bildirimini devralır.
Türler için ad alanlarını bildirme
Türler, XAML'de ön ekli bir XAML ad alanı bildirilerek, ad alanı bildirimi Ortak Dil Çalışma Zamanı (CLR) ad alanı adını ve isteğe bağlı olarak bir derleme adını belirterek başvurulabilir. Bu, ad alanı bildiriminde aşağıdaki anahtar sözcükler için değerler tanımlanarak elde edilir:
clr-namespace:
veyausing:
– XAML öğeleri olarak kullanıma sunma türlerini içeren derleme içinde bildirilen CLR ad alanı. Bu anahtar sözcük gereklidir.assembly=
– başvurulan CLR ad alanını içeren derleme. Bu değer, dosya uzantısı olmadan derlemenin adıdır. Derlemenin yolu, derlemeye başvuracak XAML dosyasını içeren projede bir başvuru olarak oluşturulmalıdır. Clr-namespace değeri türlere başvuran uygulama koduyla aynı derleme içindeyse bu anahtar sözcük atlanabilir.
Not
veya using
belirtecini değerinden clr-namespace
ayıran karakter iki nokta üst üste, belirteci değerinden assembly
ayıran karakter ise eşittir işaretidir. İki belirteç arasında kullanılacak karakter noktalı virgüldür.
Aşağıdaki kod örneği bir XAML ad alanı bildirimini gösterir:
<ContentPage ... xmlns:local="clr-namespace:MyMauiApp">
...
</ContentPage>
Alternatif olarak, bu şu şekilde yazılabilir:
<ContentPage ... xmlns:local="using:MyMauiApp">
...
</ContentPage>
Ön local
ek, ad alanı içindeki türlerin uygulamada yerel olduğunu belirtmek için kullanılan bir kuraldır. Alternatif olarak, türler farklı bir derlemedeyse, derleme adı da ad alanı bildiriminde tanımlanmalıdır:
<ContentPage ... xmlns:controls="clr-namespace:Controls;assembly=MyControlLibrary" ...>
...
</ContentPage>
Ardından, içeri aktarılan bir ad alanından tür örneği bildirilirken ad alanı ön eki belirtilir:
<controls:Expander IsExpanded="True">
...
</controls:Expander>
Özel ad alanı şeması tanımlama hakkında bilgi için bkz . Özel ad alanı şemaları.