Не удается изменить визуальный порядок в Visual Studio

Я пишу расширение Visual Studio, которое находится над всем внутри текстового редактора (над выделениями, текстом и т. Д.).

[Export(typeof(IWpfTextViewCreationListener))]
[ContentType("csharp")]
[TextViewRole(PredefinedTextViewRoles.Interactive)]
internal sealed class MyAdornmentFactory : MyAdornmentFactoryBase, IWpfTextViewCreationListener
{
    [Export(typeof(AdornmentLayerDefinition))]
    [Name("MyName")]
    [Order(After = PredefinedAdornmentLayers.Text, Before = PredefinedAdornmentLayers.Caret)]
    [TextViewRole(PredefinedTextViewRoles.Interactive)]
    public AdornmentLayerDefinition EditorAdornmentLayer;
    // ...
}

Проблема в том, что мой WPF UserControl всегда "прячется" за текстом - независимо от того, как я играю с OrderAttribute.

Я делаю что-то неправильно? Есть ли что-то еще, что может повлиять на это поведение?

РЕДАКТИРОВАТЬ: Теперь я могу подтвердить, что это ~ иногда ~ работает, возможно, с подключением к запуску без отладки... Кто-нибудь знает об ошибке визуальной студии?

1 ответ

Это должно сработать, или лучше для меня - это навести порядок в вашей точности. например, если вы начинаете с шаблона для выделения "A" в каждой строке с именем TextAdornment (поставляется с vs2010 SDK) и меняете zorder на

[Order(After=PredefinedAdornmentLayers.Selection, Before=PredefinedAdornmentLayers.Text)]

в

[Order(After=PredefinedAdornmentLayers.Text, Before=PredefinedAdornmentLayers.Caret)]

украшения будут размещены над редактором текста. надеюсь, что это hepls.

Другие вопросы по тегам