プログラムの実行中に収集されたさまざまなメトリックでコード行を装飾しようとしています。そのために、VS 拡張性と装飾層を使用します。ただし、エディターがスクロールされると、やや不安定で、ドキュメントの上部に対して相対的に移動するように思われるため、コードと装飾の配置が損なわれます。また、エディタの上部で常に初期化されるとは限りません。
では、Visual Studio 2010 のコード エディターに追加された装飾レイヤーを固定するにはどうすればよいでしょうか? 次の方法でキャンバスを追加します。
_adornmentLayer = view.GetAdornmentLayer("CodeAdornment");
_adornmentLayer.RemoveAllAdornments();
Canvas.SetTop(myOwnCanvas, 0);
adornmentLayer.AddAdornment(AdornmentPositioningBehavior.OwnerControlled, null, null, myOwnCanvas, null);
エディターのレイアウトのバグだと感じ始めました。