【问题标题】:How to close a Form from a Form in C#? [duplicate]如何从 C# 中的表单关闭表单? [复制]
【发布时间】:2018-01-11 07:35:28
【问题描述】:

我有 3 个表格。从 Form1 我用一个按钮打开 Form3 和 Form4。但是,当我在 Form4 上按下按钮时,我想关闭 Form4 和 Form3。(不用担心 Form2)

表格1:

private void button1_Click(object sender, EventArgs e)
    {

        Form3 frm3 = new Form3();
        frm3.Show();

        Form4 frm4 = new Form4();
        frm4.Show();



    }

Form4:

private void button12_Click(object sender, EventArgs e){
    this.Close();
    //Plus close Form3

【问题讨论】:

  • 你应该为你的表单和控件命名。
  • 您需要将表单传递给另一个表单。
  • @TheBeardedLlama 没有我的与众不同
  • 遍历Application.OpenForms 集合并关闭您要关闭的表单。

标签: c#


【解决方案1】:

表格1:

private void button1_Click(object sender, EventArgs e) { 
   Form3 frm3 = new Form3();
   frm3.Show(); 

   Form4 frm4 = new Form4(frm3);
   frm4.Show();
 }

Form4:

Form3 mFrm3Ref;
public Form4(Form3 frm){
    mFrm3Ref = frm;
    //and other initializing stuff 
} 
private void button12_Click(object sender, EventArgs e){
   mFrm3Ref.Close() ;
   this.Close();
} 

【讨论】:

  • 它无法识别 mFrm3Ref.Close();
  • @MártonGergő 更新了我的答案
  • 它现在在#Form4 frm4 = new Form4# 有问题没有给定的参数对应于'Form4.Form4(Form3)'所需的形参'frm'
  • @MártonGergő 我不好编辑了这篇文章。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-28
  • 1970-01-01
  • 2013-07-20
  • 2014-10-03
  • 1970-01-01
  • 2014-10-06
相关资源
最近更新 更多