我想在加載標記顏色(某些單詞的「背景」發生更改)後加入richTextBox
的具體內容。當我點擊一個按鈕,例如字車被標記。現在我發現了這個代碼,我必須爲我的目的重建。標記richTextBox的具體內容
public bool DoSearch(RichTextBox richTextBox, string searchText, bool searchNext)
{
TextRange searchRange;
// Get the range to search
if (searchNext)
searchRange = new TextRange(richTextBox.Selection.Start.GetPositionAtOffset(1),
richTextBox.Document.ContentEnd);
else
searchRange = new TextRange(richTextBox.Document.ContentStart,
richTextBox.Document.ContentEnd);
// Do the search
TextRange foundRange = FindTextInRange(searchRange, searchText);
if (foundRange == null)
return false;
// Select the found range
richTextBox.Selection.Select(foundRange.Start, foundRange.End);
return true;
}
public TextRange FindTextInRange(TextRange searchRange, string searchText)
{
// Search the text with IndexOf
int offset = searchRange.Text.IndexOf(searchText);
if (offset < 0)
return null; // Not found
// Try to select the text as a contiguous range
for (TextPointer start = searchRange.Start.GetPositionAtOffset(offset);
start != searchRange.End;
start = start.GetPositionAtOffset(1))
{
TextRange result = new TextRange(start, start.GetPositionAtOffset(searchText.Length));
if (result.Text == searchText)
return result;
}
return null;
}
有人可以幫我嗎?
我想從'richtextbox'中的單詞改變背景。有了這個代碼,我可以搜索一個單詞,現在我必須將它插入到flowdocument中,更改背景並將其帶回到相同位置的richtextbox。但我不知道我能做到這一點。 – 2013-02-12 10:47:39
FlowDocument從哪裏來?你當然不需要那個。 – 2013-02-12 10:51:40
我以爲我需要一個'FlowDocument'。在程序開始時,我在Richtextbox中加載了一個帶有'FlowDocument'的.txt文件。 – 2013-02-12 10:57:55