managment-barnamenevis
چهارشنبه 07 تیر 1402, 18:58 عصر
154759
من یک پنل دارم
که داخلش چندتا گروپ باکس وجود داره
داخل هر گروپ باکس تعدادی دیگه گروپ باکس وجود داره
که داخل هر کدوم دوتا رادیو باتن وجود داره
من میخوام چک کنه
اگه یکیشون تیک خورده هردو رادیو باتن سبز بشن
اگه هیچکدوم تیک نخوردن
هر دوتا رادیو باتن قرمز بشن
اینم کدم هست
اما مشکل اینجاست وقتی یکی تیک میخوره کل اون گروپ باکس رادیو باتن هاش سبز میشن
foreach (GroupBox groupBox in panel1.Controls.OfType<GroupBox>()){
bool allUnchecked = true;
foreach (GroupBox groupBox2 in groupBox.Controls.OfType<GroupBox>())
{
RadioButton firstRadioButton = null;
foreach (RadioButton radioButton in groupBox2.Controls.OfType<RadioButton>())
{
if (firstRadioButton == null)
{
firstRadioButton = radioButton;
}
else
{
if (radioButton.Checked)
{
// حداقل یکی از رادیو باتنها چک شده است، هر دو را سبز کنید
firstRadioButton.ForeColor = Color.Green;
radioButton.ForeColor = Color.Green;
allUnchecked = false;
}
}
}
}
if (allUnchecked)
{
foreach (GroupBox groupBox2 in groupBox.Controls.OfType<GroupBox>())
{
foreach (RadioButton radioButton in groupBox2.Controls.OfType<RadioButton>())
{
// هیچکدوم از رادیو باتنها چک نشدهاند، هر دو را قرمز کنید
radioButton.ForeColor = Color.Red;
}
}
}
}
من یک پنل دارم
که داخلش چندتا گروپ باکس وجود داره
داخل هر گروپ باکس تعدادی دیگه گروپ باکس وجود داره
که داخل هر کدوم دوتا رادیو باتن وجود داره
من میخوام چک کنه
اگه یکیشون تیک خورده هردو رادیو باتن سبز بشن
اگه هیچکدوم تیک نخوردن
هر دوتا رادیو باتن قرمز بشن
اینم کدم هست
اما مشکل اینجاست وقتی یکی تیک میخوره کل اون گروپ باکس رادیو باتن هاش سبز میشن
foreach (GroupBox groupBox in panel1.Controls.OfType<GroupBox>()){
bool allUnchecked = true;
foreach (GroupBox groupBox2 in groupBox.Controls.OfType<GroupBox>())
{
RadioButton firstRadioButton = null;
foreach (RadioButton radioButton in groupBox2.Controls.OfType<RadioButton>())
{
if (firstRadioButton == null)
{
firstRadioButton = radioButton;
}
else
{
if (radioButton.Checked)
{
// حداقل یکی از رادیو باتنها چک شده است، هر دو را سبز کنید
firstRadioButton.ForeColor = Color.Green;
radioButton.ForeColor = Color.Green;
allUnchecked = false;
}
}
}
}
if (allUnchecked)
{
foreach (GroupBox groupBox2 in groupBox.Controls.OfType<GroupBox>())
{
foreach (RadioButton radioButton in groupBox2.Controls.OfType<RadioButton>())
{
// هیچکدوم از رادیو باتنها چک نشدهاند، هر دو را قرمز کنید
radioButton.ForeColor = Color.Red;
}
}
}
}