Я работаю над приложением, которое отображает некоторые дочерние окна, которые могут быть закрыты пользователем или автоматически закрыты. При отладке некоторых исключений, которые были брошены, я обнаружил, что пытался вызвать такие методы, как Hide()
, в уже закрытом окне; эта конкретная ветвь кода была общей для обоих случаев, и я этого не заметил.
Одна из моих первых идей заключалась в том, чтобы искать свойство на Window
, которое указывало бы, что окно было закрыто. Кажется, я не могу найти его. В WinForms я бы посмотрел на свойство IsDisposed для несколько надежного индикатора, что форма была закрыта (она не будет надежно работать для диалога, но я не работаю с диалоговыми окнами.) Я не вижу ничего эквивалентного по Window
. Документация для Window.Close()
, как представляется, не указывает никаких свойств, которые были изменены методом. Я пропустил что-то очевидное или это единственный способ узнать, закрыто ли окно для обработки события Closed
? Это кажется суровым требованием для простой задачи.