多线程程序里有比textbox高效的显示方式吗? textview.Invoke((MethodInvoker)delegate { textview.Text += "需要显示的数据"; });请问网友们,哪些方法比这个高效呀? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 线程中操作就要invoke委托private void ThreadRun() { invoke((MethodInvoker)delegate {this.textBox1.text= "xxx ";}); } 如果是不一大堆数据在一起显示,试试RichTextBox的AppendText();如果是一行一行的数据,试试ListBox。 可以用RichTextBox的AppendText试试 此话怎讲?愿闻其详。ps:textview.AppendText("需要显示的数据");//这样会自动滚动滚动条。(在设置滚动条可用的情况下) 看 MSDN, Control.Invokehttp://msdn.microsoft.com/zh-cn/library/zyzhdc6b.aspx若在后台线程调用这个方法,还算是正常,但也不见得高效。如果在 UI 线程上调用这个方法:首先把显示文本的操作搞成个方法,然后用一个委托指向这个方法,接着把这个委托推到某个线程上(也许是主线程,也许是子线程)无论哪个线程都好,这个线程会执行委托,执行完之后在主线程的消息泵上插入一条消息。等待消息泵循环最终显示文本。绕那么多圈有什么好处? 也许是因为推到子线程上去了,你调试的时候觉得显示文本的那个操作立即返回,就觉得高效了么 新手求助啊 大神帮忙指导一下 帮忙写个删除重复记录的sql语句 新建一个按钮 如何让当前窗体可以最大化和最小化 Infragistics.Win.UltraWinGrid.UltraGrid 是什么东东,给解释一下吧 散分:欢迎光临MSPROJECT开源代码网站 C#中加载启动图片的问题(新手) c++结构体到c#的问题(不好意思,没分了哈),高手请进! WPF,获取窗体中的元素,哪里出错了? WCF中Stream流处理怎么实现,请给个具体的小例子 用C#调用PowerPoint2013出错 C#做的图片下载器下载好慢 winform 下载源文件问题!
private void ThreadRun()
{
invoke((MethodInvoker)delegate {this.textBox1.text= "xxx ";});
}
如果是一行一行的数据,试试ListBox。
textview.AppendText("需要显示的数据");//这样会自动滚动滚动条。(在设置滚动条可用的情况下)
看 MSDN, Control.Invoke
http://msdn.microsoft.com/zh-cn/library/zyzhdc6b.aspx若在后台线程调用这个方法,还算是正常,但也不见得高效。如果在 UI 线程上调用这个方法:首先把显示文本的操作搞成个方法,然后用一个委托指向这个方法,接着把这个委托推到某个线程上(也许是主线程,也许是子线程)无论哪个线程都好,这个线程会执行委托,执行完之后在主线程的消息泵上插入一条消息。等待消息泵循环最终显示文本。
绕那么多圈有什么好处? 也许是因为推到子线程上去了,你调试的时候觉得显示文本的那个操作立即返回,就觉得高效了么