Światło MVVM: przekazuj obiekt z widoku na model podglądu

Niedawno zacząłem pracować z WPF przy użyciu światła MVVM i mam następujące (prosty scenariusz).

MainWindow zawiera listę elementów.

Po wybraniu jednego z nich i kliknięciu przycisku uruchamiam polecenie:

ReservoirViewerCommand.Execute(null);

W klasie viewmodel tworzę instancję polecenia i wysyłam wiadomość z wybranym obiektem:

ReservoirViewerCommand = new RelayCommand(OpenReservoir);
private void OpenReservoir()
{
    Messenger.Default.Send(new LaunchShowReservoirMessage(){Reservoir=SelectedReservoir});          
}

gdzie:

class LaunchShowReservoirMessage:MessageBase
{
    public Reservoir Reservoir { get; set; }
}

Mainview rejestruje wiadomość i otwiera nowe okno potomne:

private void RegisterMessages() 
{
    Messenger.Default.Register<LaunchShowReservoirMessage>(this,OnLaunchShowReservoir);
}

public void OnLaunchShowReservoir(LaunchShowReservoirMessage msg) {
    var showReservoir = new ReservoirViewerView();
    showReservoir.Show(); 
}

Potrzebuję, aby nowy ViewModel (ReservoirViewerViewModel) mógł jakoś przechwycić przekazany obiekt przez wiadomość, dzięki czemu będę mógł wyświetlić szczegóły tego obiektu w oknie potomnym.

Wykonałem debugowanie krok po kroku, a konstruktor ViewModel nigdy nie został osiągnięty.

questionAnswers(2)

yourAnswerToTheQuestion