Também existe esta maneira de especificar o modelo de visualização:
using Wpf = System.Windows;
public partial class App : Wpf.Application //your skeleton app already has this.
{
protected override void OnStartup( Wpf.StartupEventArgs e ) //you need to add this.
{
base.OnStartup( e );
MainWindow = new MainView();
MainWindow.DataContext = new MainViewModel( e.Args );
MainWindow.Show();
}
}
<Rant>
Todas as soluções propostas anteriormente requerem que MainViewModel
tenha um construtor sem parâmetros.
A Microsoft tem a impressão de que os sistemas podem ser construídos usando construtores sem parâmetros. Se você também tiver essa impressão, vá em frente e use algumas das outras soluções.
Para quem sabe que construtores devem ter parâmetros, portanto a instanciação de objetos não pode ser deixada nas mãos de frameworks mágicos, a maneira adequada de especificar o modelo de visão que mostrei acima.
</Rant>