删除richtextbox SelectionBackColor

时间:2014-03-12 17:27:34

标签: c# winforms richtextbox

如何将richtext框的SelectionBackColor更改为"没有颜色"?

我试过这些:

Color.FromArgb(0, 255, 255, 255);
Color.Empty;
Color.White;
Color.Transparent;

但他们都返回相同的结果:Color.White !!!

有关更多说明,请将richtextbox backcolor更改为某些颜色(如粉红色),然后将SelectionBackColor更改为红色,现在,尝试删除SelectionBackColor,您会看到颜色为白色。请注意,在此示例中将SelectionBackColor更改为粉红色是不正确的:D !!!

4 个答案:

答案 0 :(得分:0)

我需要澄清你的意思"没有颜色"。 你的意思是透明吗?

您可以将SelectionBackColor设置回默认颜色: http://msdn.microsoft.com/en-us/library/system.windows.forms.control.defaultbackcolor(v=vs.110).aspx

http://msdn.microsoft.com/en-us/library/system.windows.forms.richtextbox.selectionbackcolor(v=vs.110).aspx

答案 1 :(得分:0)

这不是魔术

richTextBox1.SelectionBackColor = richTextBox1.BackColor;

瓦尔特

答案 2 :(得分:0)

我也有同样的问题,最后我用了那段代码:

richTextBox.Text = richTextBox.Text.Replace(richTextBox.SelectedText, richTextBox.SelectedText);

这适用于背景,但也会删除所有其他格式(下划线,粗体等)。

答案 3 :(得分:0)

也许有点晚了,但我注意到你写的是

this.richTextBox.SelectedText = "\r";

RTF丢失了以下文本的所有格式,包括SelectionBackColor。

e.g。

this.richTextBox.SelectionBackColor = Color.Yellow;
this.richTextBox.SelectedText = "the damn yellow backcolor is set";
this.richTextBox.SelectedText = "\r";
this.richTextBox.SelectedText = "now i have transparent backcolor again and the default text";