Wpf - viewmodel tworzy inne view...?

0

cześć, uczę się podstaw mvvm i chciałem sobie zrobić prosty projekcik.
założenie jest takie

VmGlowne:

jest listView z użytkowinkami

public class User
{
public int Id{get;set;}
public string Name{get;set;}
public UserDetails Details{get;set;}
}

w pierwszym VM mam zbindowaną listView z List<User>
Mam też przycisk "pokaż szczegóły", tutaj jest command
i w nim...
chcę wywołać nowe okno (UserDetailsView)
które bindowałbym z UserDetailsViewModel
w tym oknie były by szczegółowe informacje usera (obiekt User.Details)
ale jak to zrobić:

w Execute umieściłem

var view = new UserDetailsView(_vm.InvitationChoosenUser, VmGlowne);
view.Show();

zaś samo UserDetailsView w konstruktorze ma:

public UserDetailsView(User user, UserViewModel vm)
       {
           vm.User = user;
           InitializeComponent();
       }

Jednak tu bindowanie nie zadziała. sam widok (UserDetailsView) wyglada mniej wiecej tak:

 <Window.DataContext>
        <vm:UserViewModel/>
    </Window.DataContext>

...

 <TextBox Text="{Binding User.Details.DisplayName, Mode=TwoWay}" Grid.Column="1" Grid.Row="0" />
1

Bo w konstruktorze UserDetailsView nie ustawiasz DataContext

DataContext = vm;

1 użytkowników online, w tym zalogowanych: 0, gości: 1