В соответствии с шаблоном MVVM я пытаюсь подключить отображение дочернего окна при помощи View в ответ на запрос от модели представления.
Используя MVVM-Light Messenger, View будет регистрироваться длязапрос на отображение дочернего окна в конструкторе представления следующим образом:
InitializeComponent();
Messenger.Default.Register<EditorInfo>(this, (editorData) =>
{
ChildWindow editWindow = new EditWindow();
editWindow.Closed += (s, args) =>
{
if (editWindow.DialogResult == true)
// Send data back to VM
else
// Send 'Cancel' back to VM
};
editWindow.Show();
});
Подпишется ли подписка на закрытое событие ChildWindow с использованием лямбды, что вызывает проблемы со сборкой мусора.Или, другими словами, когда (если вообще когда-либо) окно editWindow станет не связанным, и поэтому он станет кандидатом на сборку мусора.