我已經開始變得在VS2012最終的InvalidOperationException
說任何項目的任何用戶控件放置在任何地方一個消息時:出現InvalidOperationException在
「調度處理已經暫停,但消息仍在處理中。」
...只要我在UserControl
的代碼隱藏中的任何位置撥打MessagBox
。目前這似乎影響到我的計算機上的每個項目,包括我下載的項目以及除UserControl本身之外沒有真實代碼的新項目。這似乎隻影響UserControl
s,但是;標準類和Windows的代碼隱藏工作正常。
System.InvalidOperationException發生
的HResult = -2146233079
消息=分派器處理已被暫停,但消息仍然被處理。
源= WindowsBase
堆棧跟蹤: 在System.Windows.Threading.Dispatcher.WndProcHook(IntPtr的HWND,MSG的Int32,IntPtr的wParam中,IntPtr的lParam的,布爾&處理)
的InnerException:
InnerException是空的,因爲根據VS,它是空的。這個問題對任何人都有意義嗎? Google搜索之後,我發現了一些引發此異常的情況,但這些情況都不是這樣的。我希望這裏的某個人可能會對可能造成這種情況的一些知識有所瞭解,並可能在我重新安裝VS並希望獲得最佳效果之前幫助我。
任何想法如何解決這一點將不勝感激。
每馬克·霍爾的要求:A類,因爲這將導致異常簡單:
public partial class TestView : UserControl
{
public TestView()
{
InitializeComponent();
System.Windows.MessageBox.Show("Test");
}
}
請顯示您用於實例化MessageBox的代碼 –
我已更新該問題。 –
似乎你可以在UI線程上顯示MessageBox以避免該異常http://stackoverflow.com/questions/7442943/dispatcher-throws-invalidoperationexception-on-messagebox-show-in-textchanged-ev – keyboardP