打开的时候判断一下for(int i=0; i<MDIChildren.Count; i++)
{
   if().....   
   {
     frm.Show(); 
   }
}

解决方案 »

  1.   

    在子窗口中写代码:
    this.StartPosition = Manual;//这一句必须要有
    this.Location = new Point(X, Y);
      

  2.   

    public static Form QueryChildForm(Form MdiForm,Type MdiChildType)
    {
    foreach (Form Child in MdiForm.MdiChildren)
    {
    //如果有这个类型的窗口 把它返回去
    if (MdiChildType.Equals(Child.GetType()))
    {
    return Child;
    }
    }
    return null;
    }
    private void button1_Click(object sender, System.EventArgs e)
    {
    FormC fc = QueryChildForm(this,typeof(FormC)) as FormC;
    if(fc !=null)
    {
    fc = new FormC();
    fc.MdiParent=this;
    fc.Show();
    }
    else
    {

    fc.Show();
    } }