System.Windows.Forms namespace’i altında yer alan RadioButton kontrolünü kullananlar bileceklerdir, sahip olduğunuz bir değişkenin değerine göre ilgili RadioButton’un seçili duruma getirilmesi gerektiği durumlarda kodunuza RadioButton sayınıza bağlı olarak uzayacak şekilde “if-else if” deyimleri ve ya “switch-case” deyimi yazmak zorunda kalırsınız.
Bu durumun tek sebebi ise, RadioButton’ları gruplamak için kullanabileceğimiz, yine System.Windows.Forms namespace’i altında yer alan GroupBox kontrolünün “SelectionChanged” gibi bir event’i ve ya “SelectedRadioButton” gibi bir özelliği olmamasından kaynaklanır. Ayrıca RadioButton kontrolünün “Value” özelliğini taşımaması sebebiyle RadioButton’lar üzerinde “Value” taşıyamamak da ayrı bir sorundur. İşte bu durumda, satırlarca kod yazmak istemeyen her yazılım geliştiricinin ihtiyacına çözüm olabilecek yapıyı, .NET Framework’ün sahip olduğu nesne tabanlı programlama tüm sorunlarımıza çözüm olacaktır.
Nesne tabanlı programlama ile konumuzun alakasını tabi ki yukarıda bahsettiğim konular haricindeki tüm ihtiyaçlarımızı karşılayabilen GroupBox kontrolünden türetebileceğimiz bir kontrol yazabilmemiz için gereken tüm nesnel ihtiyaçları .NET Framework’ün bize sunması.
Öncelikli olarak ihtiyacımız olan System.Windows.Forms.RadioButton sınıfından türemiş ve “Value” özelliği olan bir RadioButton’dur (bundan sonra ValuableRadioButton olarak anılacaktır).
// Namesp