С# исключение захвата WPF в подчиненной форме, вызываемой winform

У меня есть приложение WPF, которое вызывает подчиненную форму winforms. Winform вызывает окно WPF, используя showDialog(). Окно WPF содержит границы, для которых я устанавливаю фоновое изображение. Моя проблема заключается в следующем. Если с загружаемым изображением возникла проблема, я получаю исключение ArgumentException, сообщающее мне, что у изображения неверный заголовок метаданных. Даже если я поймаю ошибку, подокно WPF все равно потеряет фокус за двумя другими окнами, и любое взаимодействие с ним, которое установит для dialogResult значение true, вызовет InvalidOperationException, поскольку оно не регистрирует окно как вызванное showDialog() .

Наверное, я делаю что-то явно не так. Однако как мне обрабатывать это исключение и почему подокно WPF ведет себя именно так?

Изменить: кажется, что исключение возникает всякий раз, когда я устанавливаю uri или источник потока для растрового изображения. Однако размещение этого в блоке try не приводит к его перехвату здесь, он перехватывается в вызове showDialog().


person Chris    schedule 15.04.2011    source источник
comment
Я не понял свою проблему, но нашел обходной путь. Я использовал пример 1 в этом вопросе: stackoverflow.com/questions/5682822/   -  person Chris    schedule 16.04.2011


Ответы (1)


Не пытаясь решить проблему, а пошутить:

приложение WPF, которое вызывает подчиненную форму winforms. Winform вызывает окно WPF, используя showDialog()

В этом корень всех проблем :D

person Marino Šimić    schedule 15.04.2011
comment
Да, я признаю, что это не идеально. Но это было удобно. - person Chris; 15.04.2011
comment
Даже когда я просто вызываю подокно из основного окна, минуя Winform, у меня все равно возникает та же проблема. - person Chris; 15.04.2011