我打开了一个编辑器窗口。并且,我要求检查如果它无法连接到数据库,或者在打开窗口时连接断开,则应关闭窗口。
var window = new EditorWindow(group);
window .KeyDown += (sender, args) =>{
if (args.Key == Key.Escape)
window .Close();
};
DialogHelper.ShowDialog(window);
并且,为了改变数据库连接,我:
public dbState dbState
{
get { return dbState ; }
private set
{
dbState = value;
FirePropertyChanged("dbState ");
}
}
我是WPF的新手,所以任何帮助都会受到赞赏。提前谢谢。
答案 0 :(得分:1)
如果你直接接线,你可以在订阅EditorWindow
属性更改事件的dbState
类中添加代码,当它甚至触发时,在你的处理程序中你会调用{{1关闭窗口的方法。有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/ms748948.aspx。
更简洁的方法是使用MVVM库并利用事件聚合。例如,Caliburn.Micro就是这样做的:http://caliburnmicro.codeplex.com/wikipage?title=The%20Event%20Aggregator。