C# 如何保持窗体处于激活状态

C# 如何保持窗体处于激活状态,c#,winforms,C#,Winforms,现在,我有两个表单,叫做form1和form2,在form1中有一个按钮,当我点击它,然后打开form2 private void button1_Click(object sender, EventArgs e) { Ges.produit.Add(p); Form3 f= new Form3(); f.dataGridView1.Rows.Clear(); foreach (var item in Ges.produit) {

现在,我有两个表单,叫做form1和form2,在form1中有一个按钮,当我点击它,然后打开form2

private void button1_Click(object sender, EventArgs e)
{
    Ges.produit.Add(p); 
    Form3 f= new Form3(); 
    f.dataGridView1.Rows.Clear(); 
    foreach (var item in Ges.produit) 
    {
        f.dataGridView1.Rows.Add(item.Id, item.Name, item.Qty, item.Prac, item.Prav, item.Disc); 
    }
    this.MdiParent = f.MdiParent; 
    f.Show(); 
    this.Hide(); 
}

问题:在form2中,我单击它时创建了一个按钮,form2关闭并返回form1,而无需打开另一个form1。如何做?这有几种方法,一种方法是将父窗体的引用传递给其构造函数中的子窗体,然后在关闭子窗体时根据该引用调用show

另一种方法是在父窗体内创建子窗体,同时连接子窗体的FormClosed事件以重新显示父窗体

下面是这两种方法的示例

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void btnShowForm2_Click(object sender, EventArgs e)
    {
        var form2 = new Form2(this);

        this.Hide();
        form2.Show();
    }

    private void btnShowForm3_Click(object sender, EventArgs e)
    {
        var form3 = new Form3();

        form3.FormClosed += (o, args) =>
        {
            this.Show();
        };

        this.Hide();
        form3.Show();
    }
}

public partial class Form2 : Form
{
    private readonly Form1 _form1;

    public Form2()
    {
        InitializeComponent();
    }

    public Form2(Form1 form1)
        :this()
    {
        _form1 = form1;
    }

    private void Form2_FormClosed(object sender, FormClosedEventArgs e)
    {
        _form1.Show();
    }
}

您正在尝试的Post代码可能重复,因为您只需关闭form.private void按钮1_Click(object sender,EventArgs e){Ges.produit.Add(p);Form3 f=new Form3();f.dataGridView1.Rows.Clear();foreach(Ges.produit中的var项){f.dataGridView1.Rows.Add(item.Id、item.Name、item.Qty、item.Prac、item.Prav、item.Disc);}this.MdiParent=f.MdiParent;f.Show();this.Hide();}我将您的代码移到了我们可以实际阅读的问题。请随意删除您的评论。一般来说,不要害怕编辑您的问题以添加人们要求的详细信息。