方法一:
成都地区优秀IDC服务器托管提供商(创新互联).为客户提供专业的成都移动机房,四川各地服务器托管,成都移动机房、多线服务器托管.托管咨询专线:18980820575
public Form1()
{
InitializeComponent();
CheckForIllegalCrossThreadCalls = false;
}
方法二:
using System;
using System.Threading;
using System.Windows.Forms;
namespace TestingUIThread
{
public partial class Form1 : Form
{
Thread thread = null;
public Form1()
{
InitializeComponent();
}
private void btnEnable_Click(object sender, EventArgs e)
{
thread = new Thread(new ParameterizedThreadStart(EnableButton));
thread.Start(null);
}
private void EnableButton(object o)
{
EnableButton();
}
private delegate void EnableButtonCallBack();
private void EnableButton()
{
if (this.btnTest.InvokeRequired)
{
this.Invoke(new EnableButtonCallBack(EnableButton));
}
else
{
btnTest.Enabled = true;
btnTest.Text = "Enabled";
}
}
}
}
方法三: 通过ISynchronizeInvoke和MethodInvoker.
using System;
using System.ComponentModel;
using System.Threading;
using System.Windows.Forms;
namespace TestingUIThread
{
public partial class Form1 : Form
{
Thread thread = null;
public Form1()
{
InitializeComponent();
}
private void btnEnable_Click(object sender, EventArgs e)
{
thread = new Thread(new ParameterizedThreadStart(MyEnableButton));
thread.Start(null);
}
private void MyEnableButton(object sender)
{
ISynchronizeInvoke synchronizer = this;
if (synchronizer.InvokeRequired)
{
MethodInvoker minvoker = new MethodInvoker(this.EnableButton);
synchronizer.Invoke(minvoker, null);
}
else
{
this.EnableButton();
}
}
private void EnableButton()
{
btnTest.Enabled = true;
btnTest.Text = "Enabled";
}
}
}
文章题目:线程间操作无效
新闻来源:https://www.cdcxhl.com/article2/ipoiic.html
成都网站建设公司_创新互联,为您提供关键词优化、企业建站、搜索引擎优化、网站排名、定制开发、ChatGPT
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联