[How To] Aplicar estilos desde código
Introducción
Básicamente, aquí demuestro cómo crear un estilo enteramente mediante código C# sin la necesidad de crearlo como recurso en XAML. Particularmente, me siento más cómodo utilizando XAML para realizar esta tarea, pero de todos modos comparto una manera de realizarlo mediante C#
Utilizando el código
En este caso aplicaremos el estilo a todos los controles de tipo TextBox y cambiaremos sus colores:
void AplicartEstiloTextBox()
{
//Instanciamos la clase Style y aplicamos el estilo al tipo que necesitemos, mediante typeof.
Style style = new Style(typeof(TextBox));
//Aplicamos los setters para los distintos cambios que haremos al estilo
style.Setters.Add(new Setter(TextBox.ForegroundProperty, Brushes.Red));
style.Setters.Add(new Setter(TextBox.TextProperty, "RedColor"));
//Agregamos el estilo al recurso del XAML
Resources.Add(typeof (TextBox), style);
}
private void Window_Loaded(object sender, RoutedEventArgs e)
{
//Llamamos a nuestro método privado
this.AplicarEstiloTextBox();
}
Conclusión
En WPF, mediante C#, podemos lograr generar estilos sin pasar por el código XAML. Pero esto genera mucho código innecesario, pudiendo aprovechar ese tiempo en crear estilos más bonitos mediante XAML directamente.