onlyou13

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

方式一:

 1         private void btnCalc_Click(object sender, EventArgs e)
 2         {
 3             new Thread(new ThreadStart(Test)).Start();
 4         }
 5 
 6         private void Test()
 7         {
 8             if (this.textBox1.InvokeRequired)
 9             {
10                 this.textBox1.Invoke(new MethodInvoker(Test));
11             }
12             else
13             {
14                 this.textBox1.Text = "12345";
15             }
16         }

 

方式二:

        public Form1()
        {
            InitializeComponent(); 
            content = SynchronizationContext.Current;
        }

        private SynchronizationContext content = null;

        private void btnCalc_Click(object sender, EventArgs e)
        {
            new Thread(new ThreadStart(Test2)).Start();
        }

        private void Test2()
        {
            content.Post((e) =>
            {
                if (this.textBox1.InvokeRequired)
                {
                    this.textBox1.Invoke(new MethodInvoker(Test));
                }
                else
                {
                    this.textBox1.Text = "12345";
                }
            }, null);
        }

 

posted on 2022-04-10 18:01  onlyou13  阅读(164)  评论(0编辑  收藏  举报