我通过主窗体的Button按钮打开一个子窗体,子窗体主要是完成一些数值运算,然后保存结果为.dat文件,关闭子窗体。我的问题是:子窗体关闭后,主窗体如何自动的读取这个.dat文件并显示在ListView中,不需要通过点击任何控件来完成。

解决方案 »

  1.   

    关闭前,通知主窗体啊,变量通知,在变量的set方法中处理啊,或者直接调用主窗体的某个方法,或者委托通知
    http://topic.csdn.net/u/20120710/14/c88a8f3c-c096-4f93-a0ee-b82b810ebd9d.html
      

  2.   


    子窗体中
         public delegate void OperationHandler();
            public event OperationHandler OperationCompleted;    private void Form_FormClosed(object sender, FormClosedEventArgs e)
            {
               OperationCompleted();
            }主窗体中private void btn_Click(object sender, EventArgs e)
            {
              from1 f=new from1();
    f.OperationCompleted+= new from1.OperationHandler(detail_rOperateCompleted);
    f.show();
            }  void detail_OperateCompleted()
            {
               //读取显示操作
            }
      

  3.   

    定义一个全局的 变量 bool _mustReCalc 在 CLOSING 里面写
    try
    {
      //CODE
      _mustReCalc = true;  
    }CATCH{
      _mustReCalc = false;
    }在 调用的BUTTON 里面写
    FRM.SHOW();
    IF (bool _mustReCalc )
    {
     //CODE
    }ELSE
    {
    //CODE
    }
      

  4.   

    模态显示FormChild fc = new FromChild();
    if(fc.ShowDialog() == DialogResult.OK)
    {
      //Read dat
    }