如何使用Visual Studio扩展创建绿色(或蓝色)扭曲装饰

我有一个Visual Studio扩展,显示红色错误波形。 我还喜欢提供其他颜色的花纹,例如黄色表示警告。

通过扩展ITagger类,可以完成红色的小波形:

internal sealed class MySquigglesTagger : ITagger<IErrorTag> {
    public IEnumerable<ITagSpan<IErrorTag>> GetTags(NormalizedSnapshotSpanCollection spans) {
        foreach (IMappingTagSpan<MyTokenTag> myTokenTag in this._aggregator.GetTags(spans))        
            SnapshotSpan tagSpan = myTokenTag.Span.GetSpans(this._sourceBuffer)[0];
            yield return new TagSpan<IErrorTag>(tagSpan, new ErrorTag("Error", "some info about the error"));
        }
    }
}

我曾试过:

  • 我的直觉(错误地说)用不同的errorType返回一个ErrorTag可能会产生不同类型的标签,但是无论你通过它的字符串是什么,它们都是红色的。 例如。 新的ErrorTag(“警告”)会给出红色的波形。 MSDN文档几乎不存在。 请参阅ErrorTag。
  • 在标记名称空间中,没有提到实现ITag的不同Tag元素。 我希望存在WarningTag或InfoTag。
  • 在这里问MSDN论坛的问题。
  • 问题 :如何创建绿色(或蓝色或黄色)波浪装饰? 可悲的是,即使奥术或复杂的解决方案,赞赏...

    我的目标是VS2015和VS2017。

    编辑:在输入此问题时,MSDN论坛上的某人回复说,无法使用当前API完成此操作。 在Visual Studio中制作黄色曲线真的不可能吗?!


    该PredefinedErrorTypeNames包含了支持的值ErrorType的财产ErrorTag

    您已经接近“警告”,但PredefinedErrorTypeNames.Warning的值似乎是“编译器警告”。

    链接地址: http://www.djcxy.com/p/39151.html

    上一篇: How to create green (or blue) squiggle adornments with a Visual Studio extension

    下一篇: Animating shape layer type custom UIViews, during a UIView.animate?