Silverlight 3 - TextBox.CaretBrush

Silverlight brinda la posibilidad de cambiar los estilos de nuestra aplicación de la manera que queramos, por lo que si elegimos algún tema con colores oscuros, nos podíamos encontrar con este problema

1

Un TextBox donde el fondo es negro, por lo que no podemos visualizar el cursor para saber donde estamos parados.

Silverlight 3 nos da la posibilidad de poder cambiar el color del cursos para que no interfiera con el estilo que queremos agregar.

2Vemos que ahora tenemos el cursor de color blanco, permitiendo ver donde estamos parados.

Este es el código desde el XAML

<TextBox Height="25"
         Width="250"
         Foreground="White"
         Background="Black"
         Text="Cursor en Blanco"
         CaretBrush="White" />
La propiedad importante es CaretBrush, que nos permite definir el color que necesitamos.

También podemos darle un toque más complejo.

3

Este es el código desde el XAML

<TextBox Height="25"
         Width="250"
         Foreground="White"
         Background="Black"
         Text="Cursor con LinearGradient">
        <TextBox.CaretBrush>
            <LinearGradientBrush StartPoint="0,0"
             EndPoint="0,1">
                <GradientStop Color="Orange"
                              Offset="0" />
                <GradientStop Color="Pink"
                              Offset=".5" />
                <GradientStop Color="Orange"
                              Offset="1" />
            </LinearGradientBrush>
        </TextBox.CaretBrush>
  </TextBox>
Vemos que podemos definirle variantes de color para generar un efecto más interesante.

Otro punto importante, es que pasa si queremos seleccionar una parte del contenido del TextBox. Tenemos dos propiedades que nos permiten definir el color de fondo y el de selección (SelectionBackground y SelectionForeground).

4

Veamos el código XAML

<TextBox Height="25"
         Width="250"
         Foreground="White"
         Background="Black"
         Text="Color en Selección de Texto"
         CaretBrush="White"
         SelectionBackground="White"
         SelectionForeground="Black" />

Esta cuestión no está dentro de las novedades más conocidas, pero es algo importante que puede solucionar algunos problemas a la hora de diseñar la aplicación.

No Comments