如何將窗口設置爲從ViewModel聲明,初始化並打開的所有者?如何從WPF中的ViewModel設置窗口作爲所有者窗口
下面是代碼:
public class ViewModel : INotifyPropertyChanged
{
// declaration
static nextWindow nw;
...
public ICommand OpenNextWindow { get { return new RelayCommand(OpenNextWindowExecute, CanOpenNextWindowExecute); } }
bool CanOpenNextWindowExecute(object parameter)
{
return true;
}
void OpenNextWindowExecute(object parameter)
{
nw = new nextWindow();
nw.WindowStartupLocation = WindowStartupLocation.CenterScreen;
// Set this window as owner before showing it...
nw.Show();
}
}
在代碼隱藏文件NextWindow的,我可以用這個代碼集NextWindow的爲業主:
nw.Owner = this;
如何從視圖模型實現的呢?
你可以嘗試結合它到您ViewModel中的一個Window,並且從您VM中將Window設置爲任何相關的。 但是,你通常希望你ViewModel不知道你的視圖,所以我不知道這將是一個乾淨的方式。 – Belterius