首页 文章

C#使Form1在Form2关闭后执行操作

提问于
浏览
0

我是C#的新手,我一直在阅读文档和旧问题,但我无法弄清楚如何执行以下操作 .

我有两种形式,Form1和Form2 .

Form1包含一个datagridview,其中包含文件中的内容 . Form1上的按钮打开Form2,用户可以在文本框中输入信息 . 然后,用户单击Form2上的按钮,该按钮将新内容添加到文件中 . 一切正常 .

现在,Form2上有一个退出按钮 . 我想要的是当用户退出Form2时,Form1将立即调用该方法重新加载datagridview,以便更新 . Form2关闭时如何自动调用此方法?

谢谢,非常感谢您的帮助!

1 回答

  • 4

    如果用户在 Form2 打开时不必与 Form1 进行交互,则将第二个表单显示为模式对话框,该对话框将停止执行第一个表单中的代码,并在显示第二个表单后更新网格 .

    using (var newFrm = new Form2())
    {
        newFrm.ShowDialog();  // execution of Form1 stops until Form2 is closed
    }
    
    // read the file and update the DataGridView (this line executes when Form2 is closed)
    

    或者,您可以订阅Form2的 Closed 事件以在关闭时执行代码:

    var newFrm = new Form2();
    newFrm.Closed += delegate
        {
            // read from file and update DataGridView
        };
    newFrm.Show();
    

相关问题