【发布时间】:2014-05-08 17:42:10
【问题描述】:
我目前正在使用 WinForms 开发 C# 工具。 - 它正在读取和修改 .txt 文件,我想加入我们在 IDE 中看到的基本功能之一:颜色编码。
我正在处理的 .txt 文件有一些关键字和短语,它们对着色非常有用,以便用户轻松阅读内容。
到目前为止,我发现了一篇关于使用 RichTextBox 并在当时定义一个选择的帖子,然后您会给出不同的颜色。当我想继续评估和着色内容时,这对我来说似乎效率非常低,并且出于某种原因,我的一部分人告诉我这是丑陋的代码。
richTextBox1.SelectionFont = new Font("Verdana", 12, FontStyle.Bold);
richTextBox1.SelectionColor = Color.Red;
我最初希望有一种方法以某种方式(如 html)对文本进行编码,以便在将文本输入到文本框之前为其特定部分着色,然后在可编辑字段中正确呈现它。但似乎这不是一个真正的选择。
做这样的事情的最佳做法是什么?多色编码的可编辑文本字段。我错过了什么吗?有没有“漂亮”的方法来做到这一点?
我希望我的问题是有道理的,我没有做过很多 UI 编程。感谢您的帮助。
【问题讨论】:
-
我会去用户体验 (UX) SO 网站,他们对这些东西非常好。
-
Is there a "pretty" way to do this?- 是的,它叫做WPF。 -
您正在描述 RichTextBox 控件的确切用途,但您想避免使用它。奇怪的。请参阅How to append text to RichTextBox without scrolling and losing selection? 以解决突出显示选定文本时的闪烁问题。
-
我没有说我不会使用它——我说我不明白如何有效地为我的特定目的使用它。