اما من در اینجا گروهی از radio button ها رو دارم که به وسیله ی group box باید هر کدام از radio button ها را چک کنم.جواب شما برای حالتیه که من چند تا radio button داشته باشم که مال یک گروه نباشند!
این تابع ()IsGroupChecked ای که ساختم مشخص می کند که آیا در درون یک GroupBox کنترل RadioButton ای
انتخاب شده است یا نه :
کد:
private bool [B]IsGroupChecked[/B](GroupBox g)
{
int i;
RadioButton rb;
for (i = 0; i < g.Controls.Count; i++)
{
if (g.Controls[i].GetType().ToString() == "System.Windows.Forms.RadioButton")
{
rb = (RadioButton) g.Controls[i];
if (rb.Checked == true)
return true;
}
}
return false;
}
مثلا کد زیر، با مقادیر True و False که در درون textBox1 قرار داده می شود، مشخص می شود که در groupBox2
کنترل RadioButton ای هست که انتخاب شده باشد یا خیر :
کد:
textBox1.Text = IsGroupChecked(groupBox2).ToString();
همچنین تابع ()GetCheckedRadioButton ای هم ساختم که در یک GroupBox کنترل RadioButton ای که
انتخاب شده است را بر می گرداند و اگر چنین کنترلی وجود نداشت null را بر می گرداند :
کد:
private RadioButton [B]GetCheckedRadioButton[/B](GroupBox g)
{
int i;
RadioButton rb;
for (i = 0; i < g.Controls.Count; i++)
{
if (g.Controls[i].GetType().ToString() == "System.Windows.Forms.RadioButton")
{
rb = (RadioButton)g.Controls[i];
if (rb.Checked == true)
return rb;
}
}
return null;
}
مثلا در کد زیر نام کنترل RadioButton ای که در داخل groupBox2 انتخاب شده است در داخل textBox1
نمایش می یابد :
کد:
RadioButton rb = GetCheckedRadioButton(groupBox2);
if (rb != null)
textBox1.Text = rb.Name;
else
textBox1.Text = "";