在winform中,关闭窗口时刷新父窗口(原来打开此窗口的窗口)

如何在关闭窗口时刷新父窗口(原来打开此窗口的窗口,不一定是mdi窗口), 这种事情在b/s里很简单,但在winform里却不那么好办。因为你不能关闭第一个窗口时再打开另一个窗口,如果这样的话新窗口就一起被关闭了。但是正因为这样,我们可以让刷新的动作在关闭子窗口时进行,当然所有的动作是在父窗口中进行的。晕,不知道说明白了没有。
还是看一下例子吧
public partial class Customer : Form
    {
        public Customer()
        {
            InitializeComponent();
        }

private void customerBindingNavigatorSaveItem_Click(object sender, EventArgs e)
        {
            this.Validate();
            this.customerBindingSource.EndEdit();
            this.customerTableAdapter.Update(this.oadepotDataSet.Customer);

}

private void Customer_Load(object sender, EventArgs e)
        {
            // TODO: 这行代码将数据加载到表“oadepotDataSet.Customer”中。您可以根据需要移动或移除它。
            this.customerTableAdapter.Fill(this.oadepotDataSet.Customer);  //请注意这里

}

private void SearchBtn_Click(object sender, EventArgs e)
        {
            DataTable dt=customerTableAdapter.GetDataByKey("%"+QueryTextBox.ToString()+"%");
            customerDataGridView.DataSource = dt;
        }

private void bindingNavigatorAddNewItem_Click(object sender, EventArgs e)
        {
            //打开新窗口
            Form addForm = new AddCustomer();
            addForm.Owner = this;
            addForm.ShowDialog();
            this.customerTableAdapter.Fill(this.oadepotDataSet.Customer); //关键就在这里
                        
        }

请注意上面的两行红字,问题就在这里。不关子窗口什么事,所有的动作都在父窗口中完成。

原文地址:https://www.cnblogs.com/cnote/p/9058575.html

时间: 2024-10-24 17:37:47

在winform中,关闭窗口时刷新父窗口(原来打开此窗口的窗口)的相关文章

JavaScript:关闭弹出窗口时刷新父窗口

JavaScript:关闭弹出窗口时刷新父窗口 2010-08-13 09:25:29|  分类: 代码示例 |举报 |字号 订阅 说明: 关闭弹出窗口时刷新父窗口也可以说是关闭子窗口时自动刷新父窗口中的信息,即用户通过window对象的open()方法打开一个新窗口(子窗口),当用 户在该子窗口中进行了数据库操作(如数据添加.修改和删除等)之后,关闭子窗口时,系统会自动刷新父窗口来实时更新信息; 思路和技术: 主要应用window.open()语句打开新窗口,并在新窗口中应用opener属性,

javascript关闭弹出窗口时刷新父窗口和居中显示弹出窗

居中显示用到了moveTO()方法: 关闭弹出窗时刷新父窗口用到了window.opener方法: 父窗口代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="弹出窗口.aspx.cs" Inherits="弹出窗口" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transiti

自己收藏-javascript用window.open的子窗口关闭自己并且刷新父窗口

function closeMeAndReloadParent() { opener.location.reload(); window.close(); } 一种在父窗口中得知window.open()出的子窗口关闭事件的方法 <HTML><BODY><P> </P><form name=fm_Info><input type=text name=txtValue></form><script language=j

JS实现关闭当前子窗口,刷新父窗口

一.JS实现关闭当前子窗口,刷新父窗口 JS代码如下: <script> function refreshParent() {  window.opener.location.href = window.opener.location.href;  window.close();   }              </script>

关闭open页面时刷新父页面列表

var winObjEI = window.open("/Invoice/InvoiceViewEI?invoiceid=" + data.InvoiceId); var isClose = 1; //关闭open页面时刷新父页面列表 var loop = setInterval(function () { if (winObjEI.closed && isClose == 1) { isClose--; //这里写刷新代码 } }, 1000); isClose字段保

JS实现关闭当前子窗口,刷新父窗口及调用父窗口的方法

一.JS实现关闭当前子窗口,刷新父窗口 JS代码如下: <script> function refreshParent() { window.opener.location.href = window.opener.location.href; window.close(); } </script> html页面代码如下: <input type="button" id="btn1" class="btn" valu

js关闭子窗口,刷新父窗口

父页面js:function btnAdd_onclick() {window.open("xxx.jsp", "","height=600, width=650, top=100, left=200,z-look=yes,toolbar=yes, menubar=no, scrollbars=yes, resizable=yes ,alwaysRaised=yes,location=no, status=yes" );} function re

子div块中设置margin-top时影响父div块位置的解决办法

在css中设置样式时,通常会遇到用子div块margin中设置margin-top时,父div块中就会随着子div的margin-top,也会和子div执行相同的margin-top的位置样式 解决办法1: 若子div块中使用margin-top,则在父div块中添加:overflow:hidden; 解决办法2: 若由于特殊情况不能在父div块中添加:overflow:hidden,那么在子div块中用padding-top代替margin-top;

关闭子窗体时刷新父窗体

父窗体:NoticeList.aspx:子窗体:NoticeInfo.aspx, 1.NoticeList.aspx中有按钮btnAdd,点击后弹出窗口NoticeInfo.aspx. 弹出窗体代码:1:新增弹出:javascript:window.open(NoticeInfo.aspx');: 2:编辑弹出:<a href=NoticeInfo.aspx?PID=<%#Eval("NewsID") %>' target="_blank">