我有一个调用 winforms 子表单的 WPF 应用程序。winform 使用 showDialog() 调用 WPF 窗口。WPF 窗口包含我设置背景图像的边框。我的问题是这个。如果正在加载的图像有问题,我会收到 ArgumentException,告诉我该图像的元数据标头无效。即使我发现错误,WPF 子窗口仍然会在其他两个窗口后面失去焦点,并且任何将 dialogResult 设置为 true 的交互都会导致 InvalidOperationException,因为它没有将窗口注册为已由 showDialog() 调用.
我可能在做一些公然错误的事情。但是,我应该如何处理这个异常,为什么 WPF 子窗口会这样?
编辑:每当我设置位图图像的 uri 或流源时,似乎都会发生异常。但是,将其放入 try 块不会导致它被捕获,它会在 showDialog() 调用中捕获。