【问题标题】:Refresh MDI parent window datagrid after closing child window in C#.Net Windows application?在 C#.Net Windows 应用程序中关闭子窗口后刷新 MDI 父窗口数据网格?
【发布时间】:2010-10-01 11:12:00
【问题描述】:

我有一个带有 datagridview 控件的 MDI 窗口,该控件用于显示数据库表中的记录列表。如果用户想要添加新记录,他们单击“新建”并显示弹出(子)窗口。弹出窗口接受来自用户的数据(姓名、号码、日期等),然后在用户单击确定按钮时将其提交回服务器。此时我想用新记录更新数据库,关闭弹出(子)窗口,然后刷新父窗口datagridview,使其反映使用弹出窗口创建的新添加记录。

这是从 MDI 打开子窗口的代码

frmJobControlWindow frmjobcontrol = new frmJobControlWindow();
frmjobcontrol.ShowDialog();

当子窗口关闭事件时如何处理刷新MDI父DataGridview?

【问题讨论】:

    标签: c# winforms c#-3.0 c#-2.0 mdi


    【解决方案1】:

    ShowDialog() 返回一个值,指示用户对对话框做了什么。像这样使用它:

    using (frmJobControlWindow frmjobcontrol = new frmJobControlWindow()) {
        if (frmjobcontrol.ShowDialog() == DialogResult.Ok) {
            // update datagrid
            //...
        }
    }
    

    请务必在 OK 按钮 Click 事件处理程序中设置对话框的 DialogResult 属性:

    private void Ok_Click(object sender, EventArgs e) {
        // Do some stuff
        //...
        this.DialogResult = DialogResult.Ok;
    }
    

    虽然在设置表单的 AcceptButton 属性时它是自动的。设置 DialogResult 也会自动关闭对话框。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-01-19
      • 1970-01-01
      • 2023-03-07
      • 2012-07-09
      • 1970-01-01
      相关资源
      最近更新 更多