c#richtextbox outofmemory

时间:2011-01-10 00:28:44

标签: c# size richtextbox out-of-memory

我编写了一个应用程序来读取传入的聊天(有点像即时消息),格式化并将其插入到richtextbox中。如果让程序运行的时间足够长,则会出现内存不足错误。在查看我的代码后,我认为这是因为我从不修剪richtextbox。我遇到的问题是我不想调用clear()因为我不想让可见文本消失。我想也许我应该保持一个最大尺寸为200行的列表。此列表将保留最近的聊天。如果聊天日志变大,请调用clear并重新插入最后200行。但是,在我实现这个想法之前,我会问是否有人知道更好的解决方案。有什么想法吗?

2 个答案:

答案 0 :(得分:3)

我可能会做以下事情:

  1. 抓住RichTextBox.TextChanged活动
  2. 在处理程序中,检查行数(RichTextBox.Lines.Length
  3. 如果超出最大值,请删除第一个。
  4. 祝你好运!

答案 1 :(得分:0)

虽然我同意接受的答案,但我想提供一个代码示例来说明一些澄清:

./redis-cli --eval t.lua 
1) "1"
2) "2"

确保在删除文本后调用Trim(),否则第一行文本将变为空格,导致此操作无效。