También existe esta forma de especificar el modelo de vista:
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 las soluciones propuestas anteriormente requieren que MainViewModel
deba tener un constructor sin parámetros.
Microsoft tiene la impresión de que los sistemas se pueden construir utilizando constructores sin parámetros. Si también tiene esa impresión, siga adelante y use algunas de las otras soluciones.
Para aquellos que saben que los constructores deben tener parámetros y, por lo tanto, la instanciación de objetos no puede dejarse en manos de marcos mágicos, la forma adecuada de especificar el modelo de vista del que mostré anteriormente.
</Rant>