Ejemplo n.º 1
0
 /// <summary>
 /// 更新状态栏中央的文字,被其他线程委托调用
 /// </summary>
 /// <param name="text"></param>
 private void updateStatusStripCenter(string text)
 {
     if (this.statusStrip1.InvokeRequired)//如果调用控件的线程和创建创建控件的线程不是同一个则为True
     {
         while (!this.statusStrip1.IsHandleCreated)
         {
             //解决窗体关闭时出现“访问已释放句柄“的异常
             if (this.statusStrip1.Disposing || this.statusStrip1.IsDisposed)
             {
                 return;
             }
         }
         UpdateUiStringDelegate d = new UpdateUiStringDelegate(updateStatusStripCenter);
         this.statusStrip1.Invoke(d, new object[] { text });
     }
     else
     {
         this.toolStripStatusLabel3.Text = text;
     }
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 更新主页面的html内容,被其他线程委托调用
 /// </summary>
 /// <param name="text"></param>
 private void showToDoTaskInWebBrowse(string html)
 {
     if (this.webBrowser1.InvokeRequired)//如果调用控件的线程和创建创建控件的线程不是同一个则为True
     {
         while (!this.webBrowser1.IsHandleCreated)
         {
             //解决窗体关闭时出现“访问已释放句柄“的异常
             if (this.webBrowser1.Disposing || this.webBrowser1.IsDisposed)
             {
                 return;
             }
         }
         UpdateUiStringDelegate d = new UpdateUiStringDelegate(showToDoTaskInWebBrowse);
         this.webBrowser1.Invoke(d, new object[] { html });
     }
     else
     {
         _showToDoTaskInWebBrowse(html);
     }
 }