在C#中,MethodInvoker是一种委托类型,用于调用没有参数也没有返回值的方法。使用MethodInvoker的一种常见方式是在Windows窗体应用程序中调用UI线程上的方法。以下是使用MethodInvoker的示例:
使用系统;
使用系统。Windows . Forms
公开课程
{
公共静态void Main()
{
//创建一个表单实例。
Form form =新表单();
//创建一个按钮实例。
Button Button = new Button();
按钮。Text = "点击我";
按钮。单击+= Button _ Click;
//向窗体添加按钮
形式。Controls.Add(按钮);
//显示表单
申请。运行(形式);
}
私有静态void Button_Click(对象发送方,EventArgs e)
{
//创建一个MethodInvoker实例来调用ShowMessage方法。
method invoker method invoker = new method invoker(show message);
//调用UI线程上的ShowMessage方法。
按钮。invoke(method invoker);
}
私有静态void ShowMessage()
{
MessageBox。显示("按钮被点击!");
}
}在上面的例子中,当用户点击按钮时,Button_Click方法会创建MethodInvoker的一个实例,并使用Invoke方法调用UI线程上的ShowMessage方法。这是因为UI控件只能在UI线程上访问和更新。请注意,上面示例中的按钮是一个静态变量,因此可以在Button_Click方法中访问它。您可以根据您的代码结构和需求对其进行修改。
以上内容来自互联网,不代表本站全部观点!欢迎关注我们:zhujipindao。com
评论前必须登录!
注册