Не удается изменить визуальный порядок в 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.