Event(olay) yapısından biraz bahsedersek, eventler delegate tipinde olup genelde button, checkbox, textbox gibi kontrol yapılarında karşılaşacağımız bir işlem gerçekleştirdiğimizde veya gerçekleştirmediğimizde de dilersek otomatik olarak çalıştırılacak olan metotlardır. Bir işlem gerçekleştirmeden çalıştırılmasından kasıt çalar saat gibi düşünebiliriz, biz ona bir ayar yapıyoruz ve zamanı gelince o da kendi başına bu ayara uygun işlemini gerçekleştiriyor. Bu deleagate ve event yapısını biraz öğrendikten sonra aslında delegate'in event yapısından pek farklı bir yapı olup olmama konusunda kafanız karışması muhtemeldir. Şu anki durumumuzda bunu bir sonraki plana bırakıp birlikte nasıl çalıştıklarına bakalım:
Gördüğünüz üzere event'imiz delegate tipinde oldu ve onun parametrelerine geri dönüş tipine uygun metotları içeriyor. Burada dikkat edilmesi gereken bir diğer husus event'imize bir metot ekleyecek isek += ya da event'imizden bir metot silecek isek -= operatörlerini kullanmamız gerektiğidir. Örneğimizde event'imizin metotlarının çalışma zamanında belirlenmesini sağladık ve event ve delegate'in getirmiş olduğu özelliklerden yararlandık. Çalıştıracağımız metotlara referans verip toplama ve çıkarma işlemi metotlarının sırasıyla çalışmasını sağladık. Ben örnekte iki metodu event'e ekledim fakat dilersek çok daha fazla sayıda metot ekleyebiliriz. Böylelikle delegate ve event yapılarını kısaca görmüş olduk. Bu yapılardan gerektiği zamanlarda yararlanmayı bilmemiz bize birçok yönden avantaj sağlayacaktır.
Bu konuya da böylece kısa bir giriş yapmış bulunduk. Bir başka yazıda görüşmek üzere, iyi günler.
Hiç yorum yok:
Yorum Gönder