1

我正在使用 Telerik Radbutton 来充当复选框。但是,当我单击复选框时,我会收到一个A first chance exception of type 'System.InvalidCastException' occurred in Webapplicatie.dll

有关 asp.net 代码,请参见下面的代码:

   <telerik:RadButton ID="RadButton1" runat="server" Text="Hele dag" ToggleType="CheckBox" ButtonType="ToggleButton"  OnCheckedChanged="RadButton1_CheckedChanged">
                        </telerik:RadButton>

和:

protected void RadButton1_CheckedChanged(object sender, EventArgs e)
        {
            try
            {
                if (RadButton1.Checked)
                {
                    lbStarttijd.Visible = false;
                    lbEindtijd.Visible = false;

                    rtp_Eindtijd.Visible = false;
                    rtp_Starttijd.Visible = false;
                    //rtp_Eindtijd.Enabled = false;
                    //rtp_Starttijd.Enabled = false;
                }
                else
                {
                    lbStarttijd.Visible = true;
                    lbEindtijd.Visible = true;
                    //lbEindtijd.Enabled = true;
                    //lbStarttijd.Enabled = true;
                    rtp_Eindtijd.Visible = true;
                    rtp_Starttijd.Visible = true;
                    //rtp_Eindtijd.Enabled = true;
                    //rtp_Starttijd.Enabled = true;
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message + "\n" + ex.StackTrace);
            }
        }

然而,最奇怪的是,它并没有出现在我的 Catch 中。我不明白为什么这会导致无效的强制转换异常。帮助表示赞赏:)

旁注:这只发生在我通过垃圾邮件单击复选框来“抨击”复选框时。

4

1 回答 1

2

第一步是找到异常的根本原因:

“如果要查明异常发生的位置,可以选择 Debug->Exceptions 菜单项,然后在出现的对话框中,选中“Common Language Runtime Exceptions”的第一个复选框。

这将使调试器在发生异常时立即中断,而不是仅在未处理的异常上中断。” - 每个线程。

试一试,看看你是否能得到例外。

于 2012-12-03T15:01:20.183 回答