Raised when the selected range changes: at each step of a drag that moves its end, on SelectAll() and ClearSelection(), on a click that clears it, when a new document replaces the one it was in, and when a streaming update shortens or clears it. Not raised when the range stays the same, except once more when a drag that changed it ends: the events raised during the drag have IsSelecting set, the last one does not. Bubbles up the visual tree.
public event EventHandler<MarkdownSelectionChangedEventArgs>? SelectionChanged