相同的内容,为什么WPF的RichTextBox的滚动条,慢得像蜗牛?记事本的滚动条,则可以很快?

问题描述

我用这面代码,给RichTextBox添加了内容,想测试一下RichTextBox的反应速度。可是,添加了内容后,拖动RichTextBox的滚动条,却慢得像蜗牛,为什么?我把这些内容,复制到记事本,拖动记事本的滚动条,响应速度就非常快。如何解决?stringsst="";for(inti=0;i<30000;i++){sst+=(i+"-happyt-");}this.richTB.AppendText(sst);

解决方案

本帖最后由 startqu 于 2012-04-10 10:16:29 编辑
解决方案二:
谁能够帮忙,试试?
解决方案三:
机器慢
解决方案四:
不关机器的事情吧,为什么在相同的机器,在windows自带的记事本里,就可以很快?引用2楼的回复:

机器慢

解决方案五:
先不说RichTextBox为什么慢,你觉得RichTextBox和记事本是一种东西吗?记事本是没有格式的,纯文本,而RichTextBox是有格式的。这两种东西本身就没有可比性。
解决方案六:
先不谈其它,看你代码就有问题,循环30000次居然用string来累加,汗,你不知道StringBuilder么?
解决方案七:
String在每次运算时,比如赋值或累加字符串都会生成一个新实例,你这样循环3w次有点...用StringBuilder吧
解决方案八:
我是问,滚动条为什么慢。不是问string的累加,为什么慢。30000次累加当然是慢的。但我问的关键点,不在累加,而在滚动条。引用5楼的回复:

先不谈其它,看你代码就有问题,循环30000次居然用string来累加,汗,你不知道StringBuilder么?

解决方案九:
我是问,滚动条为什么慢。不是问string的累加,为什么慢。30000次累加当然是慢的。但我问的关键点,不在累加,而在滚动条。引用6楼的回复:

String在每次运算时,比如赋值或累加字符串都会生成一个新实例,你这样循环3w次有点...用StringBuilder吧

解决方案十:
那该用什么控件?引用4楼的回复:

先不说RichTextBox为什么慢,你觉得RichTextBox和记事本是一种东西吗?记事本是没有格式的,纯文本,而RichTextBox是有格式的。这两种东西本身就没有可比性。

时间: 2024-09-20 14:52:47

相同的内容,为什么WPF的RichTextBox的滚动条,慢得像蜗牛?记事本的滚动条,则可以很快?的相关文章

WPF中 RichTextBox和TextBox 在半角问题

问题描述 WPF中RichTextBox和TextBox在半角问题的时候不能输入英文和数字,中文是可以的 解决方案 解决方案二:帮帮忙吧拜托了,急死我了

wpf中richtextbox复制图片为什么占一行?怎样让他不占一行?

问题描述 wpf中richtextbox复制图片为什么占一行?怎样让他不占一行? 解决方案

求高人wpf中Richtextbox通过代码来设置给选中文字加下划线

问题描述 //通过代码来设置选中文字的样式代码:RichTextBox1.Selection.ApplyPropertyValue(TextElement.ForegroundProperty,Brushes.Red);//改变前景色RichTextBox1.Selection.ApplyPropertyValue(TextElement.FontSizeProperty,12);//改变文字大小上面是改变颜色和字体,怎么加下划线,还有一个问题是,当这些样式设置了以后,如果继续输入时文字会变成上

关于clipbored,bitmapImage,wpf,richtextbox

问题描述 复制RichTextBox1中的一个image(此image是通过uri(path)载入),此image设置了Name,或tag记录图片相关信息等.执行复制操作,然后粘贴到另外一个richtextbox2中.想获得richtextbox2中这个imag的Name或设置的tag信息该怎么操作.(或者说怎么比较这两个rictextbox中的图片是否是同一张图片),求教大神!! 解决方案 解决方案二:DINGYIXIA

WPF + Silverlight学习笔记

WPF and Silverlight学习笔记(三十):Brush(2) WPF and Silverlight学习笔记(二十九):Brush(1) WPF and Silverlight学习笔记(二十八):基本图形的使用(3)图 WPF and Silverlight学习笔记(二十七):基本图形的使用(2)Pa WPF and Silverlight学习笔记(二十六):基本图形使用(1) WPF and Silverlight学习笔记(二十五) WPF and Silverlight学习笔记(

使用数据绑定和WPF自定义数据显示

本文将介绍以下内容: WPF 数据绑定 数据显示和分层数据 使用模板 输入验证 本文使用以下技术: WPF. XAML.C# 目录 在代码中绑定 使用模板 使用继承的 DataContext 使用集合视图 使用分层数据 使用多个控件显示 XML 数据 使用多个控件显示业务对象 一个用于显示整个层次结构的控件 使 用分层数据模板 使用用户输入 通过 ValidationRules 验证输入 显示验证错误 通过 IDataErrorInfo 验证输入 结束语 在虚拟实验室中进行试验: 当 Windo

WPF:构建应用程序

原文 http://www.cnblogs.com/free722/archive/2011/11/13/2247455.html WPF相关的项目内容包含在App.Xaml和Window1.xaml中,这些文件中包含了相当重要的Application对象和Window对象. Window类 Window是传统应用程序的主要元素,用来包含应用程序的内容.WPF Window其实只是一个包装过的Win32窗口.操作系统无法区分具有WPF内容的窗口和具有Win32内容的窗口间的差别,它会以相同的方式

CYQ.Data 支持WPF相关的数据控件绑定(2013-08-09)

事件的结果 经过多天的思考及忙碌的开发及测试,CYQ.Data 终于在UI上全面支持WPF,至此,CYQ.Data 已经可以方便支持wpf的开发,同时,框架仍保留最低.net framework2.0版本的支持. 支持WPF的起因: CYQ.Data 一直是基于2.0语法下支持开发的框架,在未直接支持WPF之前,对于控件列表的绑定,因为WPF竟然不支持DataTable,研究后发现需要从MDataTable.ToDataTable().DefaultView来转一次绑定:另外对于UI控件,也只能

WPF 自带Datagrid编辑后无法更新数据源的问题

原文  WPF 自带Datagrid编辑后无法更新数据源的问题 解决办法: 在列的绑定属性里加上UpdateSourceTrigger,示例XAML如下 <DataGrid Grid.Row="1" Height="274" HorizontalAlignment="Left" Margin="12,10,0,0" Name="dataGrid2" VerticalAlignment="To