簡體   English   中英

四個復選框之一在 C# 中不起作用

[英]One of the Four Check box not Working in C#

我編寫了一個代碼,當單擊一個復選框時,其他復選框會被取消選擇按鈕的圖像
我的 3 個復選框按名稱、包含和按日期工作正常但是當我嘗試對按類別復選框執行相同操作時,我收到以下消息。 錯誤圖片這是我的代碼

 private void vieworder_Load(object sender, EventArgs e)
{
    try
    {
        con.Open();
        if (con.State == ConnectionState.Open)
        {
            lblstatus.Text = "Connected";
            lblstatus.ForeColor = Color.Green;
        }
        else
        {
            lblstatus.Text = "Not-Connected";
            lblstatus.ForeColor = Color.Red;
        }
        showdtgrid();



    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }

}

private void hidecheckbox()
{
    chkboxbyname.CheckState = CheckState.Unchecked;
    chkboxbydate.CheckState = CheckState.Unchecked;
    chkboxcontaining.CheckState = CheckState.Unchecked;
    checkBox1.CheckState = CheckState.Unchecked;

}





private void chkboxbyname_CheckedChanged(object sender, EventArgs e)
{
        hidecheckbox();

        chkboxbyname.CheckState = CheckState.Checked;

}

private void chkboxcontaining_CheckedChanged(object sender, EventArgs e)
{

        hidecheckbox();

    chkboxcontaining.CheckState = CheckState.Checked;

}

private void chkboxbydate_CheckedChanged(object sender, EventArgs e)
{

        hidecheckbox();

    chkboxbydate.CheckState = CheckState.Checked;


}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
    hidecheckbox();
    checkBox1.CheckState = CheckState.Checked;
}


   }

}

請告訴我怎么了

.乍一看,堆棧溢出似乎與的事件處理程序直接相關。

, which in turn changes the of your checkbox to .看起來該處理程序正在調用 ,這反過來將您的復選框的更改為 這反過來會觸發您的事件處理程序,從而創建一個無限循環。

奇怪的是,您聲稱一切都適用於其他復選框。 我的猜測是這些復選框沒有連接到它們相應的事件處理程序,因為它們也應該導致堆棧溢出。

如果不需要,您可以嘗試完全刪除您的事件處理程序嗎? 否則,注釋掉對的調用

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM