美文网首页
C#引发的异常:“System.InvalidOperation

C#引发的异常:“System.InvalidOperation

作者: 堆石成山 | 来源:发表于2024-06-12 14:52 被阅读0次

在C#Winform程序开发运行时,发现输出窗口在不断报错“引发的异常:System.InvalidOperationException(位于 System.Windows.Forms.dll 中)”
用单步调试的方法,发现在创建完其中一个窗体后,就开始报以上错误。问题代码在这:

 /// <summary>
        /// 更新日期
        /// </summary>
        private void UpdateDateTime()
        {
           //获取当前年月日时分秒周数信息
            string dateTimeWeek =Mathematics.GetCurrentYearMonthDayHourMinuteSecondWeek();
            try
            {
                   Invoke((EventHandler)delegate { tsslbData.Text = dateTimeWeek; });
            }
            catch { }
        }

以上方法是在窗体构造函数里创建了一个Timer,定时刷新。此时窗体并没有Show,即Load出来,所以使用Invoke就引发了异常System.InvalidOperationException”(位于 System.Windows.Forms.dll 中)。
修改方法:只需要在使用Invoke使用前,判断下该窗体是否被创建即可,如下所示。

/// <summary>
        /// 更新日期
        /// </summary>
        private void UpdateDateTime()
        {
            //获取当前年月日时分秒周数信息
            string dateTimeWeek =Mathematics.GetCurrentYearMonthDayHourMinuteSecondWeek();
            try
            {
                if(this.IsHandleCreated)
                   Invoke((EventHandler)delegate { tsslbData.Text = dateTimeWeek; });
            }
            catch { }
        }

相关文章

  • 11.3c#总结

    自定义异常 主要讲从几个方面学习异常处理,了解什么是异常,以及C#的异常处理机制,了解C#常用的异常类,掌握try...

  • 异常处理笔记

    #异常处理 知识点 try—catch C#语言的异常...

  • 自定义异常

    ASP.NET MVC自定义异常处理 C#结构化异常之自定义异常 在C#中所有的异常类型都继承自System.Ex...

  • Python学习日志第八篇(1023)

    异常处理 引发异常 在代码的任何地方都可使用raise语句故意引发异常: 捕获异常 ex: 处理多种异常: 捕获所...

  • 一文就能全部搞定!Python技能提升——异常传播轨迹

    当程序出现错误时,系统会自动引发异常,除此之外,Python也允许程序自行引发异常,自行引发异常使用raise语句...

  • 异常引发和断言

    引发异常 您可以使用 raise 语句引发异常。 print(1) raise ValueError print(...

  • 菜鸟文档 C#教程(一)

    菜鸟文档 C#教程 [toc]只记录与C++不同处 初级语法 C#运算符is 判断类型as 无异常强制转换 C#循...

  • C#异常

    使用原则: 正常业务逻辑,不要使用异常来处理 不要总是尝试去捕获或引发异常,而应该允许异常向调用堆栈往上传播 只有...

  • C# 异常

    1.System.StackOverflowException: 用递归和for循环很容易出现

  • 11月3日C#学习总结

    今天学习了异常处理机制,主要就是C#常用的异常类、try、catch和finally关键字处理异常和throw关键...

网友评论

      本文标题:C#引发的异常:“System.InvalidOperation

      本文链接:https://www.haomeiwen.com/subject/acfnqjtx.html