单击另一个表单c#winForms中的按钮

时间:2011-01-15 13:13:45

标签: c# winforms

我在form2上有按钮。我想当用户点击此按钮制作一些东西并在那之后调用form1.button click事件我该怎么做?

2 个答案:

答案 0 :(得分:2)

将Form1中的事件处理程序设为public,并直接调用Form1.button_click处理程序。如果不在处理程序中使用那些参数,则可以给出伪参数(this,null)。

考虑重新考虑您的设计。充其量,您的事件处理程序应该只调用另一个层的某些功能,这实际上是“做某事”。这个功能你也可以从form1或form2或从任何地方使用。

答案 1 :(得分:0)

为什么要点击表单上的按钮?你考虑过这种方法吗?


Class form 1
{

   button click()
   {
     using (form2 = new form 2)
     {
       if (form2.showdialog()==dialogresult.OK)
       {
          data odata = form2.Data;

          //do work
       }
     }
    }
}


Class form2
{

public property Data
{
    get;
}

   button click()
   {
     if (form valid)
      {
      this.dialogresult = dialogresult.ok;
      }
      else
      {
         this.dialogresult = dialogresult.cancel;
      }
      this.close();
   }
}