2013-07-22 26 views
0

我可以對RichTextBlock中的指定文本產生大膽的效果嗎?RichTextBlock對指定文本範圍的粗體效果

例RichTextBlock內容:

它可以讓你做一些未知的工作很快

我應該做的單詞「未知」一個大膽的作用,因此它應該看起來像:

它可以讓你使一些未知工作快速

我可以添加換行符與UNICODE字符。它是「\ u2028」。有沒有任何代碼可以用UNICODE做出大膽的效果?

回答

0

是的,你可以爲你想要的任何角色範圍添加文字效果。這裏是VB.net中的代碼片段 - 抱歉,我沒有做c#。

一種方法是你新的文字前改變當前字體:

rtbEmail.SelectionFont = New Font(rtbEmail.Font.Name, CSng(rtbEmail.Font.Size * 1.25)) 
rtbEmail.AppendText("To: " & emailparts.ToData & vbCrLf & "From: " & emailparts.FromData & vbCrLf & "Subject: " & emailparts.SubjectData & vbCrLf) 

的另一種方法是定義一個文本範圍的開始和結束:

highlightstart = rtbEmail.TextLength 
rtbEmail.AppendText(msg.Message) 
rtbEmail.SelectionStart = highlightstart 
rtbEmail.SelectionLength = rtbEmail.TextLength - highlightstart 
rtbEmail.SelectionFont = New Font("Courier New", rtbEmail.Font.Size, FontStyle.Regular) 

HTH - 肯

+0

因爲例子並不在本例中語言的OP,這可能不是有用正在使用。 –

+0

richTextBlock元素不包含像「SelectionFont」或「AppendText」的方法。它不是「RichTextBox」。所以它不會有幫助。 – user2599950

+0

@帕特里克 - 是的,我知道,但當然OP可以做翻譯。 #user2599950 - 是的,我猜我讀錯了。我的錯。 – Ken

1

根據以下來源,你可以插入<Bold>標籤來設置你的文本的格式。

試試你的XAML文檔中以下,看看它的工作原理:

It allows you to make some <Bold>unknown</Bold> jobs quickly

來源:http://msdn.microsoft.com/en-us/library/aa970779.aspx

+0

我在richTextBlock中添加了段落和運行元素。當我將Run元素的文本更改爲您的標籤時,它不起作用。輸出是這樣的: 它可以讓你快速地做一些未知的工作 – user2599950