我想问一个窗体事件如何在事件触发后关闭窗体并刷新页面(就是我点击页面里的一个按钮跳出一个子窗体,子窗体里有个确认按钮,里面写了要执行的事件,我怎么在事件执行后关闭子窗体,并刷新页面呢)

解决方案 »

  1.   

    子窗体定义几个属性,放置要返回的数据。
    父窗体使用ShowDialog显示子窗体,子窗体关闭后父窗体就取子窗体的属性来刷新自己。
      

  2.   

    主窗体调用子窗体:Form1 frm=new Form1();
    if(frm.ShowDialog=DialogResult.OK) this.Refresh();子窗体按钮事件:
    //其他处理代码
    this.DialogResult=DialogResult.OK;//此语句会关闭当前窗体并返回值,不必再写关闭代码
      

  3.   

    我对问题补充下。。点击页面跳出的窗体是通过脚本触发的。。
    function Comment(url,w,h)
    {g_pop=new Popup({ contentType:1,isReloadOnClose:false,width:w,height:h});
    g_pop.setContent("title","分类详细信息");
    g_pop.setContent("scrollType","no");
    g_pop.setContent("contentUrl",url);
    g_pop.build();
    g_pop.show();
    },通过URL把指定的*.aspx页面做成子窗体跳出来。
    *.aspx确定按钮的事件
            protected void btnDownLoad_Click(object sender, EventArgs e)
            {
                //重命名文件名
                int id = Convert.ToInt32(Request.QueryString["nDirId"]);
                Disk_Directory_DataBLL disk = new Disk_Directory_DataBLL();
                Disk_File_DataBLL disk_file = new Disk_File_DataBLL();
                Model_DiskFile file = disk_file.getFile(id);
                Model_DiskDirectory dir = disk.GetSingleDirectory(id);            string oldPath = (dir.Disk_Dir_UserName + file.Disk_File_Url + dir.Disk_Dir_Name).ToString();//旧的文件名
                string newPath = (dir.Disk_Dir_UserName + file.Disk_File_Url + this.txtFileName.Text).ToString();//新的文件名            localhost.DiskService web_diskservice = new AiLiKe_App.localhost.DiskService();            if(disk.SetDirectory_Dir(id,this.txtFileName.Text))
                {
                    web_diskservice.ReName_File(oldPath, newPath);                this.btnEdit.Attributes.Add("onclick", "clossse()");                
                }
                else
                {
                    this.Label1.Text = "<script>alert('重命名失败,请确认是否存在该文件或其他原因')</script>";
                    this.btnEdit.Attributes.Add("onclick", "clossse()");
                }
                
            }
    就是这个按钮事件。我要怎么在执行后点关闭窗体。并刷新页面呢
      

  4.   

    参考主窗体和子窗体之间如何相互操作对方的控件更多Form问题
      

  5.   

    我自己做了一个方法,是在父窗口上放一个按钮,然后子窗口关闭的时候模拟父窗口上这个按钮的click事件,然后在后台做相应的操作,效果还可以