using System.Windows; namespace ClientApiPoC.Shared.Wpf { public abstract class MvvmWindow : Window where TViewModel : BaseViewModel { protected TViewModel ViewModel { get; } public MvvmWindow(TViewModel viewModel) : base() { if (viewModel == null) throw new ArgumentNullException(nameof(viewModel)); this.ViewModel = viewModel; this.DataContext = this.ViewModel; } } }