c#父窗体和子窗体关闭有关问题

c#父窗体和子窗体关闭问题
各位大侠,我是c#开发的菜鸟,请问一下我创建了一个父窗体,点击父窗体的一个button生成一个子窗体,但是我在关闭子窗体的时候父窗体也会跟着关闭,不仅如此我在子窗体上添加一个buttonOK按钮,点击OK按钮会跳出一个messagebox框显示一些信息,我点击messagebox框的确定按钮后子窗体和父窗体也跟着关闭了。。。求解啊,实在不明白为什么。。。。我想关闭messagebox框的时候父框体和子窗体还在,关闭子窗体的时候父窗体还在。。。
------解决方案--------------------
关闭 子窗体  又执行了 关闭父窗口的操作了。

把代码贴出来看看,
------解决方案--------------------
如果只是父窗体new一个子窗体,关闭子窗体不会影响父窗体,你在FormClosed方法里写什么代码了
------解决方案--------------------
在子窗体定义:
private MainForm m_mainFormm;
public virtual MainForm mainFormm
{
    get
    {
        return this.m_mainFormm;
    }
    set
    {
        this.m_mainFormm = value;
    }
}

父窗体中显示子窗体时,
SonForm So=new SonForm();
So.mainFormm = this;//把父窗体传过去


子窗体关闭的时候,
mainFormm.Show();
this.Close();
------解决方案--------------------
你在打开子窗体的时候,将主窗体隐藏了??子窗体为什么要去操作父窗体啊
------解决方案--------------------

mainFormm.Show();
//this.Close(); 如果这段代码在FormClosed方法里,就去掉这句代码

------解决方案--------------------
第一    把所有的this都删了,直接用对象来表示。

第二  自己设断点,看到底是代码报错导致的两个页面同时崩溃还是说确实是都关闭了,可以多加几个Messbox.show




------解决方案--------------------
关闭窗体弹出确认对话框
 private void Frm_Main_FormClosing(object sender, FormClosingEventArgs e)//触发窗体关闭事件
        {
            if (MessageBox.Show("将要关闭窗体,是否继续?", "询问", MessageBoxButtons.YesNo) == DialogResult.Yes)//判断是否单击了“是”按钮
            {
                e.Cancel = false;//关闭窗体
            }
            else
            {
                e.Cancel = true;//取消事件的执行
            }
        }