从加载项的Rich-Text框中获取选定的单词

时间:2012-04-03 20:09:51

标签: add-in infopath selectedtext

我有一个VSTO加载项,它有一个菜单和按钮。在我的infopath表单中,我有多个富文本框,可由用户编辑。在编辑时,如果用户在任何一个富文本框中选择一个单词或一个句子并单击加载项中的按钮,我需要在下拉列表中添加这些选定的文本。

如何从富文本框中获取所选文本?所选的可能位于任何一个可用的富文本框中,因此我需要知道上下文以识别富文本框,然后只获取所选文本。

1 个答案:

答案 0 :(得分: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();