2 votes

WPF - Est-il possible d'ajouter un événement OnVerticalOffsetChanged à une zone de texte personnalisée ?

Y a-t-il un moyen pour moi de faire cela ?

11voto

CodeNaked Points 23538

Vous pouvez savoir quand le VerticalOffset change en ajoutant un gestionnaire de l'événement ScrollViewer.ScrollChanged à votre TextBox. Quelque chose comme ceci :

<TextBox AcceptsReturn="True" ScrollViewer.ScrollChanged="TextBox_ScrollChanged" />

La TextBox utilise un ScrollViewer en interne, de sorte que l'événement ScrollChanged de ce dernier remontera jusqu'à la TextBox (où vous pourrez le gérer). Les arguments de l'événement comprennent des informations sur ce qui a changé, comme le VerticalChange (la quantité de défilement vertical du contrôle).

private void TextBox_ScrollChanged(object sender, ScrollChangedEventArgs e) {
    System.Diagnostics.Debug.WriteLine(string.Format("************ {0}", e.VerticalChange));
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X