RichTextBox更改颜色文本

时间:2012-09-11 10:26:20

标签: c# winforms richtextbox

我输入了一些BASIC TEXT的RichTextBox控件。我希望以一种方式自定义它,当用户输入或粘贴一些文本时,它将具有与BASIC TEXT不同的字体颜色。

我正在更改KeyDown事件上的SelectionBackColor属性,但是当用户只尝试复制部分BASIC TEXT时也会发生这种情况。

 private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
    {
        RichTextBox richTextBox1 = sender as RichTextBox;
        richTextBox1.SelectionBackColor = Color.LightCoral;
    }

3 个答案:

答案 0 :(得分:0)

使用KeyDown事件:

而不是TextChanged
private void richTextBox1_TextChanged(object sender, EventArgs e)
{
    RichTextBox richTextBox1 = sender as RichTextBox;
    richTextBox1.SelectionBackColor = Color.LightCoral;
}

答案 1 :(得分:0)

试试这个:

private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
    {
        if (e.Control && e.KeyCode == Keys.V)
        {
            richTextBox1.SelectionBackColor = Color.LightCoral;

        }
        else
        {
            richTextBox1.SelectionBackColor = Color.White;
        }
    }

答案 2 :(得分:0)

private void richTextBox1_KeyDown(object sender, KeyEventArgs e)
{
    if (e.Control && e.KeyCode == Keys.V)
    {
        richTextBox1.SelectionBackColor = Color.LightCoral;

    }
    else
    {
        richTextBox1.SelectionBackColor = Color.White;
    }
}