Что не так с этим кодом? Либо combobox
- "Wholesale"
, либо "Retail"
форма показывает второе утверждение (true, true). Если я откажусь от checkbox
, то работает else
(true
, false
). Любая идея почему?«если», что не работает отлично
private void checkBox3_CheckedChanged(object sender, EventArgs e)
{
if (checkBox3.Checked == true || comboBox1.SelectedText == "Standalone")
{
this.checkBox1.BackColor = Color.Gray;
this.checkBox1.Enabled = false;
this.checkBox2.BackColor = Color.Gray;
this.checkBox2.Enabled = false;
}
if (checkBox3.Checked == true || comboBox1.SelectedText == "Retail")
{
this.checkBox1.BackColor = default(Color);
this.checkBox1.Enabled = true;
this.checkBox2.BackColor = default(Color);
this.checkBox2.Enabled = true;
}
else
{
this.checkBox1.BackColor = default(Color);
this.checkBox1.Enabled = true;
this.checkBox2.BackColor = Color.Gray
this.checkBox2.Enabled = false;
}
Просто хочу добавьте, что '== true' не требуется, поскольку' checkbox3.Checked' возвращает bool – bolt19
Теперь он ничего не меняет. Так же, как не принимать никакой команды. Все флажки верны. – Diegoctn
@ bolt19 это не совсем верно, поскольку некоторые реализации флажков имеют три состояния (true, false, null). в таких случаях вам нужно использовать '== true' для проверки состояния. – Yoav