先找到(一般用预先保存的方法)父窗体的实例,然后通过这个实例找到menuItem1

解决方案 »

  1.   

    把menuIteml的属性访问属性为public,反正不能够是private,然后FrmParent.menuIteml,
    不过这样子做不好,最好还是用一个属性或者方法去设置enabled的值,
      

  2.   

    在父窗体定义一个静态公用属性
    public static bool menuItem1Enabled
    {
        set
        {
            menuItem1.Enabled=value;
        }
        get
        {
            return menuItem1.Enabled;
        }
    }
    这样你就可以直接在子窗体里调用了,而且不用实例化。
    父窗体.menuItem1Enabled=true or false
    如果要控制多个menuItem的属性,你可以将其序列化。
      

  3.   

    楼上的这种方法不行,静态函数是属于class的,不是属于实例的,你的menuItem1没有指明是属于那个实例引用,编译是会出错的。遇到这种问题,我一般在创建子窗体时,把父窗体的实例引用传给子窗体保存,然后把父窗体中的相关控件的属性改为public,或是提供public的方法,就可以随时在子窗体中修改属性或是通过调用父窗体的public方法来达到修改属性的目的,推荐后者,封装性好些
      

  4.   

    To zhongjy001(.):   sorry,我看漏了你的第一句话,你的方法也是可行的。不好意思