删除 .NET RichTextBox 中的特定行
如何删除 RichTextBox 中的特定文本行?
How can I delete a specific line of text in a RichTextBox ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
如何删除 RichTextBox 中的特定文本行?
How can I delete a specific line of text in a RichTextBox ?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(9)
另一个解决方案:
Another solution:
这也可以解决问题(如果您可以在表单代码中处理诸如 ++ 之类的事情)。保留文本格式。请记住“只读”属性对您和用户都有效。
This also could do the trick (if you can handle things such as ++ in forms code). Keeps the text format. Just remember "ReadOnly" attribute work for both you and user.
试试这个:
http:// /social.msdn.microsoft.com/Forums/en-US/vbgeneral/thread/63647481-743d-4e55-9043-e0db5106a03a/
Try this:
http://social.msdn.microsoft.com/Forums/en-US/vbgeneral/thread/63647481-743d-4e55-9043-e0db5106a03a/
不知道有没有一种简单的方法可以一步完成。您可以在富文本框的 .Text 属性上使用 .Split 函数来获取行数组
,然后在删除所需的行并将其复制回.Text 富文本框的属性。
这是一个简单的示例:
如果您的富文本框将包含超过 10 行左右,那么最好使用 StringBuilder 而不是字符串来组成新文本。
I don't know if there is an easy way to do it in one step. You can use the .Split function on the .Text property of the rich text box to get an array of lines
and then write something to re-assemble the array into a single text string after removing the line you wanted and copy it back to the .Text property of the rich text box.
Here's a simple example:
If your rich text box was going to have more than 10 lines or so it would be a good idea to use a StringBuilder instead of a string to compose the new text with.
在此处找到的文本范围中找到要删除的文本文本清空,现在它从文档中消失了。
Find the text to delete in a text range, found here Set the text to empty, and now it is gone form the document.
基于tomanu的解决方案,但没有开销,
请注意,我的行数是行数 - 2。
Based on tomanu's solution but without overhead
note that my linescount here is linescount - 2.
这是我的单元测试实现。
单元测试:(
使用
\n
而不是Environment.NewLine
因为至少对我来说 RTB 会自动将\r\n
替换为>\n
)Here is my unit tested implementation.
Unit tests:
(used
\n
instead ofEnvironment.NewLine
since at least for me RTB is automatically replacing\r\n
with just\n
)有很多好的答案,但我发现很多都太复杂了。
我希望这对其他人有帮助;0)
Lots of good answers, but I find many far to complicated.
I hope this helps others some ;0)