This article has been localized into Turkish by the community.
Giriş
Eğitimde şimdiye kadar, WPF'deki sadece tanımlı (built-in) kontrolleri kullandık. Bu kısma kadar olanlar bayağı bir yol aldırmış oldu, çünkü bunların kullanımı aşırı rahat ve stili değiştirilebilir ve neredeyse her şeye taslağı oluşturulabilir. Ancak bir noktada kendi kontrollerini oluşturmanın faydasını da göreceksiniz. Diğer arayüz framework'lerinde bu olay biraz zor olabilir, ancak WPF ile çok kolay, iki yöntem sunarak bu işlem gerçekleştirilebilir: UserControls and Custom controls.
UserControls (Kullanıcı kontrolleri)
Bir WPF UserControl'ü UserControl sınıfını miras alır ve bir WPF penceresi gibi davranır: Bir XAML dosyası ve Code-behind (xaml.cs) dosyası ile gelir. XAML dosyasında, istediğin görünümü yaratmak için var olan WPF kontrollerini ekleyebilirsin ve bunları Code-behind dosyasında kod ile birleştirebilirsin, istediğin fonksiyonu ekleyebilmek için. Sonrasında WPF bu fonksiyonları uygulamada bir ya da birçok yerde kolayca gruplayarak veya uygulamanın farklı yerlerinde bu fonksiyonları yeniden kullanarak gömebilmene izin verecek.
Custom controls (Değiştirilmiş kontroller)
Bir Custom kontrol bir Usercontrol'den çok daha düşük seviyeli bir durumdadır. Custom kontrol oluşturduğunda, var olan bir sınıftan miras alırsın ne kadar derine gideceğine bağlı olarak. Birçok durumda, Control sınıfını miras alabilirsin, diğer WPF kontrolleri TextBox benzeri kontrollerden miras alırken, ancak daha da derine inmek istersen, FrameworkElement sınıfını miras alabilirsin ya da hatta UIElement sınıfını miras alabilirsin. Derinlere indikçe daha fazla kontrol ancak daha az fonksiyonellik elde edilir.
Custom kontrol görünümü genellikle bir tema dosyasındaki stiller ile kontrol edilir, UserControl görünümü uygulamanın geri kalanını takip ederken. Bu aslında UserControl ile Custom control arasındaki en büyük farkı belirtir: Custom kontrol stillenebilir/şablonlabilir, UserControl'da ise böyle bir durum yoktur.
Özet
WPF'de yeniden kullanılabilir kontroller oluşturmak kolaydır, özellikle UserControl yaklaşımını kullanıyorsan. Bir sonraki başlıkta, UserControl oluşturmanın ne kadar kolay olduğuna ve kendi uygulamalarında nasıl kullandığına bakacağız.