2011-04-15 107 views
1

我有一個WPF應用程序調用winforms子窗體。該winform使用showDialog()調用WPF窗口。 WPF窗口包含我設置背景圖像的邊框。我的問題是這樣的。如果正在加載的圖像有問題,我會收到一個ArgumentException,告訴我圖像的元數據頭是無效的。即使我發現錯誤,WPF子窗口仍然會失去焦點,落在其他兩個窗口之後,並且與它的任何交互都會將dialogResult設置爲true,從而導致InvalidOperationException,因爲它沒有將窗口註冊爲由showDialog()調用。 。C#WPF在winform調用子窗體捕獲異常

我可能在做一些明顯錯誤的事情。但是,我應該如何處理這個異常,爲什麼WPF子窗口的行爲如此呢?

編輯:當我設置bitmapImage的uri或流源時,似乎發生異常。然而,將它放到try塊中並不會導致它在這裏被捕獲,它會在showDialog()調用中被捕獲。

+0

我沒弄明白我的問題,但我沒有找到一個解決。我在這個問題中使用示例1:http://stackoverflow.com/questions/5682822/c-wpf-argumentexception-not-caught-when-using-bitmapimage-begininit – 2011-04-15 22:09:37

回答

-1

不是要解決這個問題,但開個玩笑:

一個WPF應用程序調用一個 的WinForms窗體。在WinForm調用使用的ShowDialog()

這是所有問題的根源一 WPF窗口:d

+0

是的,我承認這並不理想。但它很方便。 – 2011-04-15 19:47:05

+0

即使我只是從主窗口調用subWindow,繞過Winform,我仍然有同樣的問題。 – 2011-04-15 19:53:11