我正在做小的wpf MVVM应用程序,我有(也许)非常简单的问题。我有按钮,通过button_click执行新窗口的打开。我在Button_click方法中只使用了这段代码:
Winow1 w = new Window1() { Owner = Application.Current.MainWindow, };
w.DataContext = this.DataContext;
w.ShowDialog();
但是这个按钮也绑定到命令,但是先执行click并且命令被模态窗口阻止,并在关闭窗口后执行。
我需要在点击之前或与点击同时执行此命令。你知道这样做的方法吗?
如果需要,我可以发布更多代码。
修改
此命令仅从List中获取一个对象并设置多个属性。如果我只使用Show()
它可以正常工作,但我需要模态窗口,所以我无法点击mainWindow。
答案 0 :(得分:0)
使用BackgroundWorker进行此类操作以释放UI线程被Dialog阻止。
以下是一个示例:http://www.dreamincode.net/forums/topic/112547-using-the-backgroundworker-in-c%23/