Как именно отображается элемент WPF вместе с другими визуальными объектами?C#

Место общения программистов C#
Anonymous
Как именно отображается элемент WPF вместе с другими визуальными объектами?

Сообщение Anonymous »

Я новичок в C# и WPF. Итак, я просматриваю репозиторий dotnet wpf на github, пытаясь выяснить, как выделение/выделение текста, сделанное в тексте в RichTextBox, фактически отображается на экране. На данный момент я нашел множество файлов, классов и интерфейсов, которые тесно связаны между собой, однако я до сих пор не могу точно понять, где находится этот рендеринг и его логика. Это функция, создание экземпляра объекта, передача сообщения или что-то еще, что делает выделение видимым на экране?
Это где-то внутри: TextSelectionHighlightLayer.cs?Я обнаружил, что обработчик событий изменения выделения текста в TextBoxBase.cs выглядит следующим образом:

Код: Выделить всё

_textEditor.Selection.Changed += new EventHandler(OnSelectionChangedInternal);
Это в Highlight.cs, HighlightLayer.cs?
Мне также кажется странным, что я не могу найти его, проверив RichTextBox .cs напрямую. Например, SelectionBrush — это цвет прямоугольника выделения, который будет использоваться при выделении текста, однако я подозреваю, что система рендеринга будет использовать эту переменную, когда она фактически показывает выделение выделения, но я просто не могу понять, где используется это свойство. (или использовался ли он вообще).

Подробнее здесь: https://stackoverflow.com/questions/787 ... s-rendered

Вернуться в «C#»