Foros del Web » Programando para Internet » ASPX (.net) »

Como cambiar el color de un boton realizado en Blend

Estas en el tema de Como cambiar el color de un boton realizado en Blend en el foro de ASPX (.net) en Foros del Web. Hola, He introducido en mi proyecto un boton. Me gustaría que ese boton cambie de color dependiendo de algunas cosas que saco de la base ...
  #1 (permalink)  
Antiguo 23/08/2009, 10:28
 
Fecha de Ingreso: julio-2009
Mensajes: 26
Antigüedad: 14 años, 9 meses
Puntos: 0
Como cambiar el color de un boton realizado en Blend

Hola,

He introducido en mi proyecto un boton. Me gustaría que ese boton cambie de color dependiendo de algunas cosas que saco de la base de datos.

He intentado varias cosas pero no consigo que se modifique el color, puesto que el boton esta dentro de un template, este template dentro de un grid, y ahi tengo un rectangulo y un cubo de cristal.

Tengo que hacerlo en el .cs puesto que la consulta de la base de datos la realizo ahi.

Alguien sabe como modificar en el visual studio el color de un boton creado en blend?

Gracias
Un saludo,
Maiu
  #2 (permalink)  
Antiguo 29/09/2009, 15:25
 
Fecha de Ingreso: septiembre-2009
Mensajes: 1
Antigüedad: 14 años, 7 meses
Puntos: 0
Respuesta: Como cambiar el color de un boton realizado en Blend

Saludos,

Una tecnica que puede aplicar es realizar un enlace a la propiedad BackGround del boton y a este enlace crear una clase conversion para que segun el valor de la base de datos de devuelva el color que necesitas.

Para realizar un enlace en XAML

<Button x:Name="Boton" Background="{Binding Path=Estado,Converter={StaticResource ConversionColor}}" />

Para realizar la clase de conversion debes realizar el siguiente codigo:

public class ConversionPuntaje : IValueConverter
{

#region IValueConverter Members

public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
int parametro = int.Parse(parameter.ToString());
SolidColorBrush c=new SolidColorBrush(Colors.Transparent);


switch (parametro)
{
case 1:
if (parametro <= int.Parse(value.ToString()))
c = new SolidColorBrush(Colors.Yellow);
break;
case 2:
if (parametro <= int.Parse(value.ToString()))
c = new SolidColorBrush(Colors.Yellow);
break;
case 3:
if (parametro <= int.Parse(value.ToString()))
c = new SolidColorBrush(Colors.Yellow);
break;
case 4:
if (parametro <= int.Parse(value.ToString()))
c = new SolidColorBrush(Colors.Yellow);
break;
case 5:
if (parametro <= int.Parse(value.ToString()))
c = new SolidColorBrush(Colors.Yellow);
break;
default:
break;
}

return c;
}


Esta explicacion es algo breve pero si necesitas mas detalle por favor avisame y te ayudo.

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:09.