MethodInvoker委托是一个无参数、无返回值的委托,可以用来封装一个方法,然后通过委托来调用该方法。
以下是MethodInvoker委托的使用示例:
using System;
using System.Windows.Forms;
public class Program
{
public static void Main()
{
// 创建一个Form实例
Form form = new Form();
// 创建一个Button实例
Button button = new Button();
button.Text = "Click me";
button.Click += new EventHandler(button_Click);
// 将Button添加到Form中
form.Controls.Add(button);
// 使用MethodInvoker委托来封装一个方法,并通过委托来调用该方法
MethodInvoker methodInvoker = new MethodInvoker(ShowMessage);
methodInvoker.Invoke();
// 显示Form
Application.Run(form);
}
private static void button_Click(object sender, EventArgs e)
{
// 使用MethodInvoker委托来封装一个方法,并通过委托来调用该方法
MethodInvoker methodInvoker = new MethodInvoker(ShowMessage);
methodInvoker.Invoke();
}
private static void ShowMessage()
{
MessageBox.Show("Hello, World!");
}
}
在上面的例子中,我们创建了一个Form实例,并向其添加了一个Button。当点击Button时,会调用button_Click方法。在button_Click方法中,我们使用MethodInvoker委托来封装一个ShowMessage方法,并通过委托来调用该方法。ShowMessage方法会弹出一个消息框显示"Hello, World!"。
另外,我们在Main方法中也使用MethodInvoker委托来直接调用ShowMessage方法,以演示MethodInvoker的用法。