代码如下:
current是MyRichTextBox中包含一句文本的TextRange类变量
double m = MyRichTextBox.Document.ContentStart.GetOffsetToPosition(current.Start);
double n = MyRichTextBox.Document.ContentStart.GetOffsetToPosition(current.End);
TextPointer start = MyRichTextBox.Document.ContentStart.GetPositionAtOffset
(System.Int32.Parse(m));
TextPointer end = MyRichTextBox.Document.ContentStart.GetPositionAtOffset
(System.Int32.Parse(n));
如此得到的start与end与current.Start和Current.End并不相同,这是为什么呢?
即:
用函数GetOffsetToPosition()得到的偏移量,再用GetPositionAtOffset()转换的时候,得到的位置与最初的位置不同,这是为什么呢?