Avalonedit scrollchanged программно
Я использую AvalonEdit для отображения файла с подсветкой синтаксиса, и я хотел бы обработать событие ScrollChanged. Я могу зарегистрироваться для него в xaml вот так:
<avalonedit:TextEditor ScrollViewer.ScrollChanged="TextEditor_ScrollChanged">
Однако я хотел бы создать подкласс, который обрабатывает это, поэтому мне не нужно делать это в коде окна каждый раз, но я не смог понять, как это сделать.
Что я уже пробовал:
Следующие попытки не сработали:
public class MySubClass : TextEditor { public MySubClass() { // Cannot convert type 'MyProgram.MySubClass' to 'System.Windows.Controls.ScrollViewer' ((ScrollViewer)this).ScrollChanged += ScrollChanged; // Cannot convert type 'ICSharpCode.AvalonEdit.Editing.TextArea' to 'System.Windows.Controls.ScrollViewer' ((ScrollViewer)TextArea).ScrollChanged += ScrollChanged; }
Я также попробовал предложить аналогичный вопрос на stackoverflow: c# - Как обработать событие ' ScrollViewer.ScrollChanged` в MVVM? - переполнение стека[^], но
UIHelper.FindChildren(this)
не находит ScrollViewer.