WPF’te Tetikleyiciler (Triggers)


WPF’te Tetikleyiciler (Triggers) konusu, klasik Windows programcılarına uzak, SQL ile uğraşanlarsaysa yakın bir konudur. Türkçe karşılığı Tetikleyici olan Triggerlar, belli bir olay gerçekleştiğinde yapılacak işlemleri içerir.

Aynı konu Sql’de bir kayıt girildiğinde, silindiğinde ya da düzeltildiğinde verilen uyarılar ya da kontrol mekanizmalarıyla daha iyi anlaşılabilir ve ikisinin ayrımını da daha iyi yapabiliriz. Söz gelimi SQL’de bir kayıt girildiğinde yazılan tetikleyici o kaydın daha önce var olup olmadığını denetler. WPF’teyse XAML tarafında yazacağımız tetikleyiviler daha çok animasyon, renk değiştirme, şekil değiştirme vb. işlemler için kullanılır.

Trigger sınıfı, System.Windows isim alanında bulunur ve TriggerBase sınıfından türetilmiştir. TriggerBase’den türetilen tek sınıf elbette Trigger değildir; MultiTrigger, DataTrigger, MultiDataTrigger ve EventTrigger. Bunların arasında en çok kullanılanlar ise EventTrigger ve MultiTrigger’dır.

Resim http://blah.winsmarts.com adresinden alıntıdır.

Peki “klasik Windows programlamada yapamadığımız ya da yapmakta zorluk çektiğimiz neleri yapabiiyoruz” diye sorarsak? “XAML’daki Tetikleyicilerin bize sundukları neler” dersek? Bu sorunun cevabı çok uzun olsa da, birkaç cümleyle özetlemeye çalışalım:

Animasyonlar, görsel düzenlemeler, efektler vb. işlemler için XAML tarafında çok basit birkaç satırla C# veya VB.NET tarafına gerek duymadan istediğimizi yapabiliyoruz.

Söz gelimi bir düğmeye tıklandığında, üzerine gelindiğinde ya da üzerinden gidildiğinde yapacağımız değişiklikleri C# veya VB.NET’te olay ve karmaşık kod yazmadan gerçekleştirebiliyoruz.

En kısa haliyle WPF’teki Trigger, bir animasyon olayını harekete geçiren ya da durduran aracımızdır. Bir nevi animsyon dürteci (dürtmek) diyebiliriz.🙂

Tetikleyicileri konusunu en iyi anlamanın yolu animasyonlardan geçtiğinden, birkaç animasyon örneği için köprüler (link) vereceğim. Ve Tetikleyicilerin her seferinde tek tek yaratılmaması, her nesne için söz konusu olmasını istiyorsak da Style’ların içinde nasıl kullanacağımızı da bilmeliyiz. Aşağıdaki örnekleri inceleyiniz:

WPF Dude- Triggers

WinsMarts
DotNetSlackers

CodeProject

Hakkında Mehmet KAPLAN
mehmet.kaplan@hotmail.com.tr https://mehmetkaplan.wordpress.com/mehmetkaplan/

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Log Out / Değiştir )

Connecting to %s

%d blogcu bunu beğendi: