我想编写一个visual studio 2010扩展,在每个类,方法,属性,字段和事件定义上显示边距字形(点击工具提示/弹出窗口,附加信息)。
新的基于MEF的框架非常简洁但我唯一能够标记以创建边距字形的是快照跨度。不幸的是,他们没有任何代码模型或结构,我被迫通过字符串解析=>搜索类名等。绝对不是我想做的事。
我们发现我们可以使用
[Import]
internal SVsServiceProvider ServiceProvider;
检索当前文档的DTE对象。不幸的是,我们仍然有问题要调用fileCodeModel.CodeElementFromPoint()
,因为我们没有TextPoint对象。
有人知道如何将SnapshotSpan转换为TextPoint吗?
有没有其他方法直接标记代码模型而不是文本?我在谷歌上找到的只有:Visual Studio Extensibility / Margins - 还伪造了如何从SnapshotSpan转换为TextPoint :(
祝你好运。 D.R。