簡體   English   中英

如何使用MVVM處理打開和關閉新Windows?

[英]How do I handle opening and closing new Windows with MVVM?

使用MVVM和WPF,處理打開和關閉新窗口和對話框的好方法是什么? 打開和關閉應該由ViewModel驅動嗎? 但ViewModel不應該知道視圖......

我通常使用接口。 例如,如果我想在單獨的窗口中編輯記錄,我有一個接口IEditingProvider <TViewModel>,我可以在其他地方實現,然后將接口引用傳遞給我的ViewModel的構造函數。 EditingProvider可能會做這樣的事情:

class MyRecordEditingProvider: IEditingProvider<MyRecordViewModel>
{
    // Implementation of generic interface method
    public void Edit(MyRecordViewModel model) {
        EditWindow edit = new EditWindow(); 
        edit.DataContext = model;
        edit.ShowDialog();
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM