[WPF 4.0] Changer le style de la sélection et le curseur d’insertion

Le 22 mai 2010 à 11:01

WPF 4.0 introduit plusieurs nouveautés. L’une d’elle permet de changer le style de la sélection des zones de textes et le style du curseur d’insertion.

Avant WPF 4.0, nos zones de textes ressemblaient à ceci :

image

Sélection de texte

image

Curseur d’insertion 

 

Maintenant il nous est possible de faire (ça me rappelle la sélection texte de Blend :)):

image

image

Pour la sélection de texte, la propriété SelectionBrush permet de changer la couleur de sélection, l’opacité… etc, cette propriété “DependancyProperty” est disponible dans chaque contrôle héritant de TextBoxBase.

Pour reproduire la sélection visible dans l’image ci-dessus :

<TextBox.SelectionBrush>
    <LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
        <GradientStop Color="#00314f" Offset="0"/>
        <GradientStop Color="#9eb2c4" Offset="0.375"/>
        <GradientStop Color="#9eb2c4" Offset="0.375"/>
        <GradientStop Color="#00314f" Offset="1"/>
    </LinearGradientBrush>
</TextBox.SelectionBrush>

Ici j’utilise un LinearGradientBrush, mais vous pouvez aussi très bien passer par d’autres pinceaux, avec les propriétés BitmapCacheBrush, DrawingBrush, ImageBrush, RadialGradientBrush, un SolidColorBrush ou bien un VisualBrush.

image


CaretBrush est à peu de chose près la même propriété que SelectionBrush, la différence est que celui ci est prévu pour le curseur d’insertion.

<TextBox.CaretBrush>
    <SolidColorBrush Color="DarkGray"></SolidColorBrush>
</TextBox.CaretBrush>
Comme nous pouvons le constater, c’est très simple à mettre en place. Par contre, il faut faire attention à l’accessibilité de notre application.

A bientôt :)

Pingbacks and trackbacks (1)+

Ajouter un commentaire

biuquote
  • Commentaire
  • Prévisualiser
Loading

A propos de l'auteur

Mathieu Perrein est Software Solutions Architect, MSP de 2010 à 2012.

 

MSP

 

MSP

MSP

 MSPD

MCT

 

Facebook

 

Ce blog est strictement personnel et les opinions exprimées ici n'engagent donc que moi, et pas mon employeur.

Tags

Vous avez désactivé JavaScript ou bien vous possédez une ancienne version d'Adobe Flash Player. Téléchargez la dernière version de Flash Player.