WPF关闭子窗体,重新调用父窗体的方法

父窗体

        /// <summary>
        /// 打开设置界面
        /// </summary>
        private void Set(object sender, RoutedEventArgs e)
        {
            Setting set = new Setting();
            set.ChangeTextEvent += new ChangeTextHandler(FuncSettingClosed);//设置关闭弹框后执行的方法调用
            set.ShowDialog();
        }
        /// <summary>
        /// 设置窗口关闭时执行的方法
        /// </summary>
        void FuncSettingClosed()
        {
            //写你想调用的方法,如重新绑定数据源啊 改变某标签的值
            //GetData();
        }

子窗体

public delegate void ChangeTextHandler();//定义委托 关闭弹框调用父页面方法步骤01

public partial class Setting : Window{
	public event ChangeTextHandler ChangeTextEvent;//关闭弹框调用父页面方法步骤02
		/// <summary>
        /// 关闭弹窗
        /// </summary>

        private void buttonCancel_Click(object sender, RoutedEventArgs e)
        {
            StrikeEvent();//关闭弹框调用父页面方法步骤03
            this.Close();//关闭弹窗
        }
        
		/// <summary>
        /// 重写右上角的关闭事件
        /// </summary>
        /// <param name="e"></param>
        protected override void OnClosing(System.ComponentModel.CancelEventArgs e)
        {
            StrikeEvent();//关闭弹框调用父页面方法步骤03
        }
 		/// <summary>
        /// 触发事件改变MainWindow的值 
        /// //关闭弹框调用父页面方法步骤04
        /// </summary>
        private void StrikeEvent()
        {
            if (ChangeTextEvent != null)
            {
                ChangeTextEvent();
            }
        }

}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值