如果是MDI类型的,
首先要把调用的方法公开,比如设置成Public类型的.然后使用ActiveMdiChild 属性来操作,
youForm f = this.ActiveMdiChild as youForm;
if (f!=null)
{
    f.youMethod();
}或者让你的所有子窗体都继承自一个自定义的接口,然后这样:
Iyou i = this.ActiveMdiChild as Iyou;
if (i!=null)
{
    i.Method();
}

解决方案 »

  1.   

    只需要把子窗口的Method设置为Public.同时,主窗口的Form class中保存子窗口的实例,直接对这个实例调用特定的Public的method就可以了
      

  2.   

    把子窗体的函数Public就可以了
      

  3.   

    那么你总可以得到这个左边的子窗体吧.如果你的所有子窗体都有一个共性,比如都有LoadData,SaveData等方法或属性,那么你可以定义一个公用的接口,比如:
    public interface ISubForm
    {
        void LoadData();
        void SaveData();
    }然后每一个有这个特性的子窗体都从这个接口继承一下,比如:
    public class SubForm1:Form, ISubForm
    {
        public void LoadData()
        {
        }
        public void SaveData()
        {
        }
    }在主窗体可以这样来使用:ISubForm sf = this.ActiveControl as ISubForm;
    if (sf!=null)
    {
        sf.LoadData();
        ...
    }
    如此而已!