class a
{
  form f;
  public a(form f)
  {
     this.f=f;
  }
  setformproperty()
  {
     this.f.....
  }
}new a(this)

解决方案 »

  1.   

    把你修改的代码放到InitializeComponent()的后面~
      

  2.   

    谢谢 wartim 不行啊,这种方法与用application.OpenForms[]的是一样的,不能触发自定义的函数。C#安全性检测不允许编译。webform还有一个findcontrol来取得调用的对象属性。winform如何取得?强类型的安全检测实在有点烦。
      

  3.   


    application.OpenForms[""].Controls.Find("",true)[0]
      

  4.   

    首先你这个窗体必须已经Load了。否则窗体没有初始化,那也不会获取到该窗体的句柄了。直接设置该窗体属性即可。