1

我打开了一个编辑器窗口。而且,我需要检查如果它无法连接到数据库,或者在打开窗口时连接中断,则应该关闭窗口。

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 的新手,因此我们将不胜感激。先感谢您。

4

1 回答 1

1

如果您直接连接,您将在您的EditorWindow类中添加订阅dbState属性更改事件的代码,并且当它甚至触发时,您将在您的处理程序中调用this.Close()方法来关闭窗口。有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/ms748948.aspx 。

一种更简洁的方法是使用 MVVM 库并利用事件聚合。例如,这就是 Caliburn.Micro 的做法:http ://caliburnmicro.codeplex.com/wikipage?title=The%20Event%20Aggregator 。

于 2013-08-14T06:06:52.640 回答