0

我有大约 15 个表格,每个表格都包含一些类似的代码。

我想知道的是,有什么方法可以在打开表单时自动调用包含该特定代码的函数?

就像,假设我想在Hello World每次加载任何形式的项目时显示消息。

所以我能做的是我可以创建一个模块或类文件,我可以添加一段代码,我可以以各种形式调用它。

但这是我不想要的,我想要的是,有什么方法可以添加这段代码,并在加载表单时自动填充/触发它。

也许我们可以称它为 - 表单的自动调用函数

就像,每当表单自动打开时,都会调用一个类或函数,而无需在特定表单中定义它。也许是一种库之类的东西,当加载表单时无论如何都会调用它,我可以在那里添加我的一段代码并执行它。

4

3 回答 3

3

创建您自己的继承自表单的基类:

public abstract class FormBase : Form { /*...*/ }

然后您使用的每个表单都可以从这个基类继承:

public class MyForm : FormBase { /*...*/ }    
于 2013-01-04T11:15:06.577 回答
0

您可以在表单中添加一个事件处理程序,并在其中放置需要运行的任何代码。

例如:

this.Load += new System.EventHandler(this.FormName_Load);
于 2013-01-04T11:14:46.893 回答
0
public class frm_Base : Form
{
  public void frm_Base()
  {
    this.Load += new System.EventHandler(this.frm_Base_Load);
  }
  public void frm_Base_Load(object sender, EventArgs e)
  {
    OnFormLoad();
  }
  public virtual OnFormLoad()
  {
    MessageBox.Show("Hello World");
  }
}
public class frm_Derived : frm_Base
{
  public override OnFormLoad()
  {
    base.OnFormLoad();
    MessageBox.Show("Another Hello From Derived");
  }
}

您现在可以继承所有其他表单中加载时发生的功能,也可以通过将加载方法设为虚拟来执行其他操作。

于 2013-01-04T11:18:50.773 回答