2015-05-18 13 views
0

Я работаю с Visual Studio 2013 в приложении для Windows. У меня есть два ToggleButtons. Они работают как переключатель: Я могу проверить только один из них за раз. Когда я проверю 1. кнопку Google, затем 2. кнопка переключения отменяется. Когда я проверяю 2. кнопка переключения, тогда 1. кнопка переключения отменяется.ToggleButton проверено

Моя проблема в том, что я проверяю 1. кнопку Google, а затем снова нажимаю кнопку 1. toogle, после чего она отключается, а затем у меня есть две кнопки отметок, отмеченные галочкой.

Мой вопрос: Как сделать событие, которое будет знать, когда я нажал на одну кнопку переключения, которая уже проверена, она не может быть снят, пока я не проверить вторую кнопку переключения. Мне нужно отключить событие uncheked для кнопки переключения или что-то в этом роде?

ответ

0

Что-то вроде этого:

togglebutton1_CheckedChanged(...) 
{ 
    if(!togglebutton1.Checked && !togglebutton2.Checked) 
     togglebutton1.Checked=True; 
} 
togglebutton2_CheckedChanged(...) 
{ 
    if(!togglebutton2.Checked && !togglebutton1.Checked) 
     togglebutton2.Checked=True; 
} 
0

Кнопка радио может удовлетворить ваши потребности лучше, но ..

private void Form1_Load(object sender, EventArgs e) 
    { 
     checkBox1.Appearance = Appearance.Button; 
     checkBox2.Appearance = Appearance.Button; 
     checkBox1.Checked = true; 
     checkBox2.Checked = false; 
    } 

    private void checkBox1_CheckedChanged(object sender, EventArgs e) 
    { 
     if (checkBox1.Checked == true) 
     { 
      if (checkBox2.Checked == true) 
      { 
       checkBox2.Checked = false; 
      } 
     } 
     else 
     { 
      if (checkBox2.Checked != true) 
      { 
       checkBox2.Checked = true; 
      } 
     } 
    } 

    private void checkBox2_CheckedChanged(object sender, EventArgs e) 
    { 
     if (checkBox2.Checked == true) 
     { 
      if (checkBox1.Checked == true) 
      { 
       checkBox1.Checked = false; 
      } 
     } 
     else 
     { 
      if (checkBox1.Checked != true) 
      { 
       checkBox1.Checked = true; 
      } 
     } 
    }