2014-03-12 77 views
-1

我怎樣才能富文本框「無顏色」的改變SelectionBackColor刪除RichTextBox中的SelectionBackColor

我嘗試這些:

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

但他們都返回相同的結果:Color.White

有關更多說明,請將richtextbox backcolor更改爲某種顏色(如粉紅色),然後將SelectionBackColor更改爲紅色,現在,嘗試刪除SelectionBackColor,您會看到顏色爲白色。請注意,在此示例中將SelectionBackColor更改爲粉紅色並非如此:D !!!

+0

它不會發生在這裏。你能分享更多細節嗎?你是指所選文字的文字顏色? – danish

+0

我完全解釋了問題,請創建一個新的c#winform項目,添加一個richtextbox,將其背景顏色更改爲粉紅色(僅用於測試選定的文本背景顏色)。現在添加一個按鈕,並寫下這一行:richTextBox1.SelectionBackColor = Color.Red;和第二個按鈕與此代碼:richTextBox1.SelectionBackColor = Color.Transparent; 運行代碼,並鍵入一些東西,選擇一個詞,然後按BTN1然後BTN2 所有文字應該有相同的背景色,但你會看到所選單詞有白色的背景色 – TYeeTY

+0

我嘗試Microsoft Office Word中對其進行測試,在高亮子菜單中,有是一個名爲'沒有顏色'的按鈕,它的工作很棒!我想要這個按鈕:D – TYeeTY

回答

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

+0

我嘗試richTextBox1.SelectionBackColor = DefaultBackColor,它是'控制'的顏色,就像灰色(255,240,240,240),是不是'沒有顏色' – TYeeTY

0

這不是魔術

richTextBox1.SelectionBackColor = richTextBox1.BackColor; 

瓦爾特

+0

這就像我說的問題,我在SQL中保存rtf,並且我不知道richtextbox的顏色會是什麼! – TYeeTY

+0

@TYeeTY你說*添加一個richtextbox,將它的背景顏色改爲粉紅色...... *,sql與任何事情有什麼關係。你不需要知道爲什麼只是用於測試的代碼'richTextBox1.BackColor' –

+0

:(((如果richtextbox的背景顏色是白色的,你看不到會發生什麼)。另一個例子,在你的代碼複製並粘貼後文字在辦公室字,你會看到它有突出的顏色! – TYeeTY

0

嗯,我有同樣的問題也終於我用那個代碼:

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

這個工程的背景,但會刪除所有其它格式太(下劃線,加粗等)

0

也許有點晚了,但我只注意到,如果你寫

this.richTextBox.SelectedText = "\r"; 

的RTF失去一切格式化以下文本,包括SelectionBackColor。

例如

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"; 
相關問題