码迷,mamicode.com
首页 > Windows程序 > 详细

委托刷新窗体

时间:2014-10-05 15:17:58      阅读:246      评论:0      收藏:0      [点我收藏+]

标签:for   sp   问题   c   r   new   bs   as   ui   

不知不觉在博客园待了一年多了,我也从当年的大菜鸟变成了小菜鸟,希望自己能坚持写点东西,记录自己的点点滴滴,好了进入正题;

不知道大家有没有遇到过这样的问题, 在UI界面,运行后台线程,后台线程中包含着控制窗体的某些控件的刷新,此时界面会在刷新时有些顿卡或屏幕在刷新一样,让人感觉很不爽

曾经看过某个大神写的文章解决了这个问题,现在找发现找不到了,现在做个记录吧:

public class UPDATEUI

{

     delegate void UpPictureBoxHandler(Form _form, PictureBox _pictureBox, Image img);//更新图片控件的图片

     public static void UpPictureBox(Form _form, PictureBox _pictureBox, Image img)
     {
         if (!_form.InvokeRequired)
        {
             try
            {
              _pictureBox.BackgroundImage = img;
            }
            catch
           { }
        }
        else
       {
           _form.BeginInvoke(new UpPictureBoxHandler(UpPictureBox), new object[] { _form, _pictureBox, img });
       }
   }

 

     delegate void UpTextBoxHandler(Form _form, TextBox _textBox, string _text);//更新文本框控件的文字

     public static void UpTextBox(Form _form, TextBox _textBox, string _text)
     {
         if (!_form.InvokeRequired)
        {
             try
            {
              _textBox.Text = _text;
            }
            catch
           { }
        }
        else
       {
           _form.BeginInvoke(new UpTextBoxHandler(UpTextBox), new object[] { _form, _textBox, _text});
       }
   }

 

}

 

委托刷新窗体

标签:for   sp   问题   c   r   new   bs   as   ui   

原文地址:http://www.cnblogs.com/qiyecao/p/4006878.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!