温馨提示×

C# MethodInvoker委托怎么使用

c#
小亿
84
2024-01-19 01:40:18
栏目: 编程语言

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的用法。

0