C#中RadioButton选中和取消选中,一种没办法选中和未选中切换

今天在做Winform 中RadioButton控件时,遇到一个小坑,虽然很简单,但是浪费我十分钟,感觉需要记录一下共勉。

问题描述:(RadioButton控件名为rbTime)

本来以为判断一下是否选中,没选中让其选中,反之亦然,结果却一直没法选中

  private void rbTime_Click(object sender, EventArgs e)
  {
      if (rbTime.Checked == true)
      {
         rbTime.Checked = false;
      }
      else if (rbTime.Checked == false)
      {
         rbTime.Checked = true;
      }
 }

解决办法:

声明局部变量,根据局部变量修改其属性值

 //局部变量
private bool rbcheck = true;

if (rbcheck)
   {
        rbTime.Checked = false;
        rbcheck = false;
   }
else
  {
        rbTime.Checked = true;
        rbcheck = true;
   }