چگونه بفهمیم کدام چک باکس تیک خورده است
مثلا ما دو تا چک باکس داریم
میگیم
if(checkbox1.checked)
messagebox.show("checkbox1.checked")
else if (checkbox2.checked)
messagebox.show(checkbox2 checked)
اما فرض کنیم حدود 100 تا چک باکس داریم
اینطوری که تا فردا صب باید کد بنویسیم
راه حل بهتری هست
ممنون میشم کمک کنین.
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
foreach (Control ctrl in this.Controls) {
if (ctrl is CheckBox)
{
CheckBox chk = (CheckBox)ctrl;
if (chk.Checked)
MessageBox.Show(chk.Name );
}
}
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
نقل قول:
نوشته شده توسط
abdullah20
foreach (Control ctrl in this.Controls) {
if (ctrl is CheckBox)
{
CheckBox chk = (CheckBox)ctrl;
if (chk.Checked)
MessageBox.Show(chk.Name );
}
}
کدو نوشتم ولی جواب نداد
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
چک باکس ها روی خود فرم هستند یا داخل پنل یا . . .
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
نقل قول:
نوشته شده توسط
abdullah20
چک باکس ها روی خود فرم هستند یا داخل پنل یا . . .
داخل یه تب پیج بود. انتقالشون دادم روی فرم درست شد
ولی یه مشکل دیگه هست
من میخوام جای مسیج باکس از یه لیبل استفاده کنم
یعنی توی لیبل بنویسه مثلا چک باکس 1 و چک باکس 2 فعالن
اما این کد فقط آخرین چک باکسی که تیک خورده رو نشون میده
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
String m=""; private void button5_Click(object sender, EventArgs e)
{
foreach (Control ctrl in this.Controls)
{
if (ctrl is CheckBox)
{
CheckBox chk = (CheckBox)ctrl;
if (chk.Checked)
{
m = chk.Text +" "+ m;
//MessageBox.Show(chk.Name);
label5.Text=(" "+m+" ");
}
}
}
}
این متغیر سراسری m تعریف کردم واسش
بازم یه مشکل دیگه هست
مثلا اگه ما بارول چک باکس 1 و چک باکس 2 رو انتخاب کنیم
میزنه چک باکس 1 و چک باکس 2 تیک دارن
اما اگه چک باکس سوم رو هم تیک دار کنیم
یه بار دیگه میزنه چک با کس پ و 2 و 3
خود چک باکس 3 تنهارو اضافه نمیکنه
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
آقا دمت گرم خدایی
یه
else
{
m="";
}
بهش اضافه کردم درست شد.:قلب:
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
string chknames = string.Empty;
foreach (Control ctrl in this.Controls)
{
if (ctrl is CheckBox)
{
CheckBox chk = (CheckBox)ctrl;
if (chk.Checked)
//MessageBox.Show(chk.Name);
chknames = chknames + chk.Name + Environment.NewLine;
}
}
MessageBox.Show(chknames);
}
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
نقل قول:
نوشته شده توسط
بیتا حکمت
string chknames = string.Empty;
foreach (Control ctrl in this.Controls)
{
if (ctrl is CheckBox)
{
CheckBox chk = (CheckBox)ctrl;
if (chk.Checked)
//MessageBox.Show(chk.Name);
chknames = chknames + chk.Name + Environment.NewLine;
}
}
MessageBox.Show(chknames);
}
دست شما هام درد نکنه ممنون بسیار عالی بود
.فقط یه سوال دیگه که از خدمت شما و عبدالله جان داشتم اینه که
اگه این چک باکس ها داخل گروپ باکس یا پنل باشه چطوری باید ازشون استفاده کرد
بازم ممنون
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
label1.ResetText();
foreach (Control ctrl in this.Controls["groupBox1"].Controls)
{
if (ctrl is CheckBox)
{
CheckBox chk = (CheckBox)ctrl;
if (chk.Checked)
label1.Text += chk.Name+Environment.NewLine ;
}
}
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
نقل قول:
نوشته شده توسط
abdullah20
label1.ResetText();
foreach (Control ctrl in this.Controls["groupBox1"].Controls)
{
if (ctrl is CheckBox)
{
CheckBox chk = (CheckBox)ctrl;
if (chk.Checked)
label1.Text += chk.Name+Environment.NewLine ;
}
}
داداش یه سوال دیگه
اگه برفرض مثال این چک باکس ها داخل دوتا گروپ باکس باشن
و این دوتا گروپ یاکس خودشون داخل یه پنل باشن
اونوقت چطوری میشه ازش استفاده کرد.
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
دوست عزیز خیلی سادس دیگه سوال پرسید نداره
label1.ResetText(); foreach (Control ctrl in this.Controls["panel1"].Controls["groupBox1"].Controls)
{
if (ctrl is CheckBox)
{
CheckBox chk = (CheckBox)ctrl;
if (chk.Checked)
label1.Text += chk.Name+Environment.NewLine ;
}
}
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
اما واسه گروپ باکس دوم خطا میده
foreach (Control ctrl in this.Controls["panel1"].Controls["groupBox1"].Controls["groupBox2"].Controls)
1 ضمیمه
نقل قول: چگونه بفهمیم کدام چک باکس تیک خورده است
نقل قول:
نوشته شده توسط
abdullah20
دوست عزیز خیلی سادس دیگه سوال پرسید نداره
label1.ResetText(); foreach (Control ctrl in this.Controls["panel1"].Controls["groupBox1"].Controls)
{
if (ctrl is CheckBox)
{
CheckBox chk = (CheckBox)ctrl;
if (chk.Checked)
label1.Text += chk.Name+Environment.NewLine ;
}
}
اینم erroresh:ناراحت:ضمیمه 128720