c# – 将Messagebox放在任何项目的任何UserControl中的任何位置时出现InvalidOperationException

c# – 将Messagebox放在任何项目的任何UserControl中的任何位置时出现InvalidOperationException,第1张

概述我已经开始在VS2012 Ultimate中获得InvalidOperationException了: “调度程序处理已暂停,但邮件仍在处理中.” …每当我在UserControl的代码隐藏中的任何地方调用MessagBox时.这当前似乎会影响我的计算机上的每个项目,包括我下载的项目以及除UserControl本身之外没有真正代码的新项目.但这似乎只影响UserControls;标准类和Windo 我已经开始在VS2012 ultimate中获得InvalIDOperationException了:

“调度程序处理已暂停,但邮件仍在处理中.”

…每当我在UserControl的代码隐藏中的任何地方调用MessagBox时.这当前似乎会影响我的计算机上的每个项目,包括我下载的项目以及除UserControl本身之外没有真正代码的新项目.但这似乎只影响UserControls;标准类和Windows的代码隐藏工作正常.

发生system.invalIDOperationException

的HResult = -2146233079

Message = dispatcher处理已暂停,但仍在处理消息.

来源= windowsBase

堆栈跟踪:
       在System.windows.Threading.dispatcher.WndProcHook(IntPtr hwnd,Int32 msg,IntPtr wParam,IntPtr lParam,Boolean& handling)

的InnerException:

InnerException是空白的,因为根据VS,它是null.这个问题对任何人都有意义吗?在Google搜索之后,我发现了一些抛出此异常的实例,但这些情况都不是这样的.我希望这里的某些人可能对可能导致这种情况的一些知识有所了解,并且可能能够在我尝试重新安装VS并希望获得最佳效果之前帮助我.

任何关于如何解决这个问题的想法都将非常感激.

Per Mark Hall的要求:像这样简单的类会导致异常:

public partial class TestVIEw : UserControl{    public TestVIEw()    {        InitializeComponent();        System.windows.MessageBox.Show("Test");    }}
解决方法 Hans Passant是对的,你真的不应该尝试在构造函数中显示一个消息框.构造函数不仅在运行时被调用,而且在设计时也被调用.

如果您将其用于调试目的,请尝试写入日志文件或Console.Writeline(…).

总结

以上是内存溢出为你收集整理的c# – 将Messagebox放在任何项目的任何UserControl中的任何位置时出现InvalidOperationException全部内容,希望文章能够帮你解决c# – 将Messagebox放在任何项目的任何UserControl中的任何位置时出现InvalidOperationException所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1230230.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存