wpf DocumentViewer - 通过GlyphRun获取ITextPointer,反之亦然

Sno*_*ear 35 c# wpf glyph documentviewer

只是想知道是否有人试图入侵WPF DocumentViewer以使其更有用.我已经花了差不多一个星期的时间,已经尝试根据我使用反射提取的方法为这个控件创建更强大的API.

每个人都知道如何通过反射从文档查看器中获取所选文本,但我的任务更复杂.选定的文本具有EndStart特性,这回ITextPointers.我还有一个使用此代码提取的GlyphRuns集合.现在最后我想找出哪个包含选择开始. GlyphRun

所以我想知道如何转换ITextPointersGlyphRuns反之亦然.我知道他们没有1:1的关系.这个控制与封闭的API和上周在Reflector花了不让我睡不好觉.我希望也许有人尝试过这样做或者看过代码示例,并且能够指导我完成这些丛林.

jus*_*ase 1

我建议您放弃这种方法。像这样进行大量的私人反射不应该作为生产代码的基础,它非常脆弱并且在某些情况下是完全禁止的。坦率地说,您最好找到适合您需求的第三方控件,例如www.infragistics.com

或者,如果这不是一个选项,您可能可以在需要花时间让它工作的情况下创建自己的控件。