我在富文本框中显示十六进制数据,如下所示:
64 73 67 66 34 33 74 67 35 34 36 79 37 35 79 36
33 67 35 36 67 35 36 33 79 68 34 36 37 38 72 74
我希望它每 3 个字符显示为不同的颜色。即每个位(2个数字和一个具体的空格)是不同的颜色。
我尝试做的只是在设计器模式下将文本颜色设置为蓝色,以便将处理时间减半。然后我将每 2 3 个字符更改为红色。
但是,这就是正在发生的事情:
这是代码:
for (int i = 0; i < richTextBox1.TextLength; i++)
if (i % 4 == 1)
{
richTextBox1.SelectionStart = i;
richTextBox1.SelectionLength = 2;
richTextBox1.SelectionColor = Color.Red;
}
很明显我的数学是错误的,我想不出任何可行的方法。我已经尝试过 i % 3 = 0、selectionLength = 3 等等。
PS如果这会很慢,你能建议其他方法吗?如果你想看的话,这里是完整的代码:http: //pastebin.com/vHMfnZW1