根据上文,在子窗口设置一个委托。而后在子窗口关闭事件,执行委托实例,而后在主窗口增长监听委托的方法。。。。this
想一想,本事关闭事件就是一个特殊的委托。那么干吗还要特地去声明一个新的呢?画蛇添足。spa
因而有下面的实现:code
public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private void Button_Click(object sender, RoutedEventArgs e) { SubWindow s = new SubWindow(); s.Closed += S_Closed; s.Show(); } private void S_Closed(object sender, EventArgs e) { MessageBox.Show("子窗口要关闭啦。咱们也要同步关闭了。"); this.Close(); } }
说明:blog
一、这里因为特殊,主窗口 和 子窗口是有直接调用的代码,因此能够这样搞。那么若是他们之间 不是直接调用的话,那么仍是要用委托处理了。事件
二、类,自身可能已经封装了各类各样的委托,咱们不妨多看看类定义。同步