2012-04-03 85 views
0

我有一個VSTO插件,它有一個菜單和按鈕。在我的信息表格中,我有多個用戶可編輯的富文本框。在編輯時,如果用戶在任何一個富文本框中選擇一個單詞或句子,然後單擊加載項中的按鈕,我需要在下拉列表中添加這些選定的文本。從插件的富文本框中獲取選定的文字

我怎樣才能從富文本框中選擇文本?所選內容可能位於任何一個可用的富文本框中,因此我需要知道上下文才能識別富文本框,然後才能獲取所選文本。

回答

0

在你的btn_Clicked事件中,試試這段代碼。它應該從鼠標所在的位置抓取文本,並在當前塊的結尾處結束。

var curCaret = richTextBox1.CaretPosition; 
var curBlock = richTextBox1.Document.Blocks.Where(x => x.ContentStart.CompareTo(curCaret) == -1 && x.ContentEnd.CompareTo(curCaret) == 1).FirstOrDefault();