2016-11-6坚持学习Day21子窗口关闭时,同步关闭它的主窗口(方法二)

Posted zscmj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2016-11-6坚持学习Day21子窗口关闭时,同步关闭它的主窗口(方法二)相关的知识,希望对你有一定的参考价值。

根据上文,在子窗口设置一个委托。然后在子窗口关闭事件,执行委托实例,然后在主窗口增加监听委托的方法。。。。

想想,本事关闭事件就是一个特殊的委托。那么干嘛还要特意去声明一个新的呢?多此一举。

于是有下面的实现:

 

   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();
        }

    }

 

 

说明:

1、这里由于特殊,主窗口 和 子窗口是有直接调用的代码,所以可以这样搞。那么如果他们之间 不是直接调用的话,那么还是要用委托处理了。

2、类,自身可能已经封装了各种各样的委托,我们不妨多看看类定义。

 

以上是关于2016-11-6坚持学习Day21子窗口关闭时,同步关闭它的主窗口(方法二)的主要内容,如果未能解决你的问题,请参考以下文章

2016-11-6坚持学习Day21子窗口关闭时,同步关闭它的主窗口(方法二)

Leetcode刷题100天—3. 无重复字符的最长子串(滑动窗口+集合+双指针)—day21

关闭父窗口时关闭所有子窗口

退出主窗口时关闭子窗口

2-Qt关闭子窗口时执行特定代码

取消 QFileDialog 时如何停止子窗口关闭