c# if deyimi yardım

Kodla Büyü

hanedantr

Seçkin Üye
Seçkin Üye
Mesajlar
490
Merhabalar bir program yazıyorum programda bolca checkbox var tıklamalarına göre aşağıdaki gibi işlem yapıyorum ama bana bu yöntem biraz kaba geldi acaba bu if deyimini daha modüler yapabilirmiyim tavsiyeniz nedir?



if (chbxSor2_1.Checked == true)
{
a = a + chbxSor2_1.Text.ToString();
}

if (chbxSor2_2.Checked == true)
{
a = a + chbxSor2_2.Text.ToString();
}
if (chbxSor2_3.Checked == true)
{
a = a + chbxSor2_3.Text.ToString();
}
if (chbxSor2_4.Checked == true)
{
a = a + chbxSor2_4.Text.ToString();
}
if (chbxSor2_5.Checked == true)
{
a = a + chbxSor2_5.Text.ToString();
}
 
Şöyle bir düşünsek nasıl olur.

Checkbox ların click olayını aktif hale getir.
Ama hepsi aynı fuctionu çağırsın


Kod:
public coid chbxSor2_5_click (){

}

public coid chbxSor2_6_click (){

}

// DEĞİL


// BÖYLE TEK metod olsun hangisine taıklarsan tıkla bu metotu çağırsın.

public function void Kontrol( object sender , event argüman falan filan){
        gonderici = sender.control
       if(gonderici.Checked  == true ){
             Debug.WriteLine ("işte oldu be")
       }
}

tamamen psuedo bir dil ile yazdım . Önemli olan nedemek istediğimi anlayıp gerekini araştırarak yazpman.
 
Aşağıdaki kodlar foreach ile form üzerindeki nesneleri dolaşarak işaretli checkbox'ları bularak "a" stringine ekler:

string a = "";

foreach (Control c in this.Controls)
{
if ((c is CheckBox) && ((CheckBox)c).Checked)
a += c.Text + ", ";
}
 
Aşağıdaki kodlar foreach ile form üzerindeki nesneleri dolaşarak işaretli checkbox'ları bularak "a" stringine ekler:

string a = "";

foreach (Control c in this.Controls)
{
if ((c is CheckBox) && ((CheckBox)c).Checked)
a += c.Text + ", ";
}

teşekkür ederim oldu hatta aynı diziyi radio butonlar içinde kullandım.
 
Geri
Üst