Movatterモバイル変換


[0]ホーム

URL:


İçeriğe atla
VikipediÖzgür Ansiklopedi
Ara

XAML

Vikipedi, özgür ansiklopedi

XAML (IPA /ˈzæməl/), (Extensible Application Markup Language) genişletilebilir uygulama biçimlendirme dili.Microsoft'un uygulama arayüzlerinin oluşturulmasını sağlayan tanımlama dili. XAML, geliştiricilerin XML kullanarak tüm.NET kullanıcı arayüz elemanlarının (button, textbox … gibi) çizimlerini (İngilizcelayout) kontrol edebilmelerini sağlar. Her XAML etiketi (tag), özellikleri XML attributeleriyle kontrol edilen bir .NET Framework sınıfına birebir karşılık gelir.

Örneğin <Button> elemanını ele alalım. <Button> tag'i doğrudan System.Windows.Controls.Button sınıfına karşılık gelir. Read-only olan özellikler (Properties) XAML tarafından erişilemez; sadece public, get ve set methodları olan özellikler XAML ile erişilerbilirdir. Event'ler ve handler'ler de XAML attributeleri ile belirtilebilir ve event'in gerçekleşmesi sonucu çalışacak kod da code behind tarafınaC# ya da tercihe göreVB.NET ile yazılabilir. Nasıl kiASP.NET'te kodu ister codebehind sayfasına ya da aspx sayfasına yazılıyorsa burada da codebehind ya da XAML dosyasına yazılabilir.

XAML sayfasına kodu gömülürse, çalıştırmak için önce uygulama derlenmeli. Fakat XAML sayfasına kod yazılmadıysa XAML dosyasına çift tıklayarak Vista üzerindeHTML'de olduğu gibi doğrudan görülebilir.

Windows XP'de ise sonucu görebilmek ya datarayıcıya yükleyebilmek için XAML sayfalarının önce derlenmesi gerekir.

XAML ağaç modeli

[değiştir |kaynağı değiştir]

Nasıl ki HTML nesneleriDOM ağaçını oluşturmak için pars edilirse, XAML elemanları daElementTree ağacını oluşturmak için de pars edilir.

XAML'ınnesneye dayalı methodolojiye dayandığını söylenebilir. Bir XAML elemanından türetilen başka bir eleman ebeveyninin özelliklerini alır. XAML'dan tam anlamıyla faydalanabilmek için kalıtımın doğasını anlaşılmalıdır. Custom controller, alt sınıflar oluşturularakkullanıcı arayüzü tasarımında kullanılmak üzere XAML geliştiricilerine sunulabilir.

XAML, WPF tarafında tanımlanan nesnelerin XML görünümü olduğu için, XAML elemenları nesne-tabanlı programlama tekniklerini kullanan geliştiriciler tarafından genişletilebilir.

XAML, birprogramlama dili değildir. Uygulamaları çalıştırmak için tasarlanmamıştır. XAML dosyaları uygulamalar için kullanıcı arayüz tanımları içerir. Uygulama mantığı ve event handler'ler, codebehind sayfalarında bulunur.

Uygulama ve sayfa tanımı

[değiştir |kaynağı değiştir]

Uygulama tanımı (İngilizceapplication definition) kendi dosyası içinde tanımlanır. Ayarlanması gereken iki özelliği vardır:aduzay (İngilizcenamespace) ve başlama URİ'si (İngilizcestartup URI).URI, uygulama çalıştığında yüklenmesi gereken ilk sayfayı belirtir. XAML eleman tanımında ya her eleman için biraduzaya ya da Avalon aduzayının kök elemanına referans verilmelidir.

Kökün tanımı

[değiştir |kaynağı değiştir]

Herhangi bir XAML dosyasında tanımlanan ilk eleman kök (İngilizceroot) elemanıdır. Kök elemanı mutlaka tanımlandığı aduzay referansını içermelidir. Kök elemanlar, diğer XAML elemanları içeren konteynerlerdır. Uygulama tanımı için en yaygın kök (root) elemanNavigationWindow'dur.Window elemanıysa oldukça az kullanılmaktadır.

Sayfa tanımı (İngilizcepage definition) için en yaygın kök elemanPanel ve onun alt sınıfı olanDockPanel veStackPanel elemanları ve dePage elemanıdır.

İki çeşit XAML uygulaması vardır: doğrudan çalışan (İngilizceexpress) ve yerleştirilmiş (İngilizceinstalled) uygulama. Doğrudan çalışan uygulama bir Web tarayıcısında koşar. Yerleştirilmiş uygulamalarsa bilinen geleneksel masaüstü uygulamalarıdır.

Tüm XAML özellikleri (İngilizceattribute) kod tarafında düzenlenebilir. Zaten bu özellikler, CLR sınıf özelliklerinin XML görünümleridir. Başka bir ifâdeyle geleneksel Windows uygulamalarında olduğu gibi bir düğmenin (İngilizcebutton) arka plan rengini, yüksekliğini ya da posizyonunu kod içinden de kolayca değiştirmeyi sağlar.

XAML dosyalarında da <x:Code> elemanını belirterek kod barındırılabilir. Yalnız tüm kod <CDATA[...]]> elemanı (tag) içine yazılmalıdır. <CDATA[...]]> elemanı,derleyici bu eleman içindeki kod satırlarını yorumlamasını engeller.

Örnek

[değiştir |kaynağı değiştir]
<x:Code><![CDATA     void ButtonClickedHandler(object sender, RoutedEventArgs eventArgs)        {          MyButton.Width = 100 ;          MyButton.Content = "Thank you! ";        }   ]]></x:Code>

Dış bağlantılar

[değiştir |kaynağı değiştir]
"https://tr.wikipedia.org/w/index.php?title=XAML&oldid=34773083" sayfasından alınmıştır
Kategoriler:
Gizli kategori:

[8]ページ先頭

©2009-2026 Movatter.jp