当前位置:   article > 正文

C# winform子窗体关闭后父窗体不前置的问题_winform全屏模式下showdialog子窗口后dispose会触发父窗口什么事件

winform全屏模式下showdialog子窗口后dispose会触发父窗口什么事件

父窗体调用子窗体的代码:

  1. try
  2. {
  3. if (ab.IsDisposed)
  4. {
  5. ab = new about();
  6. }
  7. ab.ShowDialog();
  8. }
  9. catch (Exception ex)
  10. {
  11. MessageBox.Show(ex.Message);
  12. }


子窗体关闭:

this.Dispose();


以上代码造成子窗体Dispose后默认return回系统,所以父窗体不能被激活。解决方法如下:

1.父窗体调用子窗体代码

  1. try
  2. {
  3. if (ab.IsDisposed)
  4. {
  5. ab = new about();
  6. }
  7. ab.ShowDialog();
  8. ab.Dispose();//关键在这里,应该由父窗体来Dispose
  9. }
  10. catch (Exception ex)
  11. {
  12. MessageBox.Show(ex.Message);
  13. }

2.子窗体退出代码:

  1. this.Close();//子窗体只把自己Close,不Dispose

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/690574
推荐阅读
相关标签
  

闽ICP备14008679号