美文网首页程序员
WPF RichTextBox 带颜色文本获取选中文本索引位置的

WPF RichTextBox 带颜色文本获取选中文本索引位置的

作者: Daisy和她的单程车票 | 来源:发表于2017-07-17 20:32 被阅读53次

如标题我的RichTextBox里面的文本是有颜色的文本内容如图所示

dfs  fsf3sdfsdfsdfs  fsdfdsfsdfsf  (空格中间部分为我选中的文本内容)

当我选中中间的一段字符串时(位置从第4个字符选到17个字符)

我用代码获取

方法1:

var start= rich2.Selection.Start;

var startP = rich2.GetPositionFromPoint(new Point(0, 0), true);

int befLocation = startP .GetOffsetToPosition(start);

int endLocation = startP .GetOffsetToPosition(rich2.Selection.End);

方法2:

int start = rich2.Document.ContentStart.GetOffsetToPosition(rich2.Selection.Start);

int end = rich2.Document.ContentStart.GetOffsetToPosition(rich2.Selection.End);

int length = rich2.Selection.Start.GetOffsetToPosition(rich2.Selection.End);

两种方法均获取不到所中字符的开始和结束的位置(如果不带颜色的普通字符串方法1可以正确获取到位置,带颜色就不行了)

跟颜色有关系吗?

摘抄至---blog  http://bbs.csdn.net/topics/392032612

但我自己也遇到这个问题~~想问下有没有知道~~


我用的WPF RichTextBox 我对选择的文本修改颜色后 返回的那部分文本在整个字符串的索引会增加一个?不知道怎么回事,不知道有没有那位大神知道

相关文章

网友评论

    本文标题:WPF RichTextBox 带颜色文本获取选中文本索引位置的

    本文链接:https://www.haomeiwen.com/subject/vmmqkxtx.html