XAML'E GENEL BAKIŞ VE UYGULAMA






    Önceki yazımda C#'ı anlatmaya ve C#'da "Hello World" uygulaması ile sizleri bilgilendirmeye çalışmıştım. Bu yazımda ise .NET ve C#'ın XAML ile ilişkilerini anlatmaya çalışacağım ve kolay bir uygulama ile bunu daha güzel bir şekilde kavramanıza yardımcı olmayı planlamaktayım.Öncelikle XAML nedir bundan bahsedelim...



XAML HAKKINDA
 
    XAML (IPA /ˈzæməl/), (Extensible Application Markup Language) genişletilmiş uygulama biçimlendirme dili. Microsoft'un uygulama arayüzlerinin oluşturulmasını sağlayan tanımlama dili. XAML, geliştiricilere XML kullanarak tüm .NET kullanıcı arayüz elemanlarının (button, textbox … gibi) çizimlerini (İng. layout) kontrol edebilmelerini sağlar. Her XAML etiketi (tag), doğrudan özellikleri XML attributeleriyle kontrol edilen bir .NET Framework sınıfına 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ına C# ya da tercihe göre VB.NET ile yazılabilir. Nasıl ki ASP.NET’te kodu ister codebehind sayfasına ya da aspx sayfasına yazılıyorsa burada da codebehind ya da XMAL 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 üzerinde HTML'de olduğu gibi doğrudan görülebilir. Windows XP’de ise sonucu görebilmek ya da tarayıcıya yükleyebilmek için XAML sayfalarının önce derlenmesi gerekir.


XAML UYGULAMASI

    XAML programlama JAVA'daki JFrame'lere çok benzerlik göstermektedir.Kodlarken daha iyi kavrayacağınızı düşünüyorum.Bu uygulamayı yaparken Visual Studio kullanacağım ve bunu 2012 versiyonunda anlatacağım.

    Öncelikle Visual Studio'yu başlatıyoruz ve sonra FILE-->NEW-->PROJECT adımlarını yapıyoruz ve karşımıza gelen ekrandan sol taraftan Windows seçeneğini sonra seçeneklerden Blank APP(XAML) 'i ve ardından  "OK" butonuna basıyoruz.(Projemize de bir isim vermeyi unutmuyoruz tabi...)




    Bu aşamadan sonra ilk defa Visual Studio da bir şey yazıyorsanız "Geliştirici Lisansı" ekranı ile karşı karşıya kalabilirsiniz. Bunu atlatmak için www.visualstudio.com adresine kayıt olmanız gerekmektedir.

    Bu aşamayı geçtikten sonra sağ tarafta ekranımıza "Solution Explorer" kısmı gelecektir.Eğer ki gelmediyse yukarıdan "VIEW" seçeneğini seçerek sonrasında "Solution Explorer" ı seçebiliriz.Bu kısımdan da "MainWindow.xaml" seçeneğine çift tıklayarak karşımıza tasarım penceresinin gelmesini sağlıyoruz.
 
    Projeyi oluşturduğumuzda tasarım penceresi olarak aşşağıdaki gibi bir ekran gelecektir.


    Ardından bu kısımda ekranın sol tarafında "Toolbox" (Ekranda gözükmüyorsa yukarıdan View'e tıklayarak listeden seçerek gelmesini sağlayabilirsiniz) seçeneğine tıklayarak gelen listeden bir adet "TextBox" bir adet  "Button" ve son olarak bir adet de "Label" alarak oluşturulan proje ekranına sürüklüyoruz ve resimdeki gibi dizayn ediyoruz.

   
    Dizaynımızı yaptığımıza göre artık kod kısmına geçebiliriz. Öncelikle TextBox'lara ve Button'lara daha düzgün bir isim vermek açısından hepsinin üzerlerine tıkladığınızda sağ alt köşede çıkan Properities kısmından Name seçeneğine istediğiniz bir değeri verebilirsiniz. Ardından "OK" butonuna çift tıklayarak bu butona tıkladığımızda yapılmasını istediğimiz şeyleri yazmak için kodumuzu yazmaya başlıyoruz.

   Ben butonuma "ok" ismini erdiğim için çif tıkladığımda okClick fonksiyonu yaratıldı.Yani bu butona tıklandığında ne yapılmasnı istiyorsak o kısım.Şimdi bu fonksiyonun içine şekildeki gibi gösterileni yazıyoruz.(TextBox'ımızın adı userName olarak ayarlanmıştır.)

    
    Sonuç olarak kodumuzu çalıştırdığımız zaman (CTRL+F5) ekran çıktımız girdiğimiz isme göre şu şekilde olacaktır.Örneğin "John" yazdığımız zaman ;

   
    XAML ile ilgili daha bir çok uygulama geliştirme örneği internette başka sitelerde mevcuttur. Ben basit bir örnek ile anlatmak istedim. Umarım yardımcı olabilmişimdir.İyi çalışmalar :)

   KAYNAKLAR

Yorumlar