using Gestor.Model.Common; using System; using System.Globalization; using System.Windows; using System.Windows.Data; using System.Windows.Markup; using System.Windows.Media; namespace Gestor.Common.Converters { public class StatusExtratoColorConverter : MarkupExtension, IValueConverter { public StatusExtratoColorConverter() { } public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (value == null) { return new SolidColorBrush(Colors.Black); } switch ((StatusParcela)value) { case StatusParcela.Baixada: case StatusParcela.BaixadaAnteriormente: case StatusParcela.BaixadaDiferencaPercentual: case StatusParcela.BaixadaManualmente: case StatusParcela.ParcelaEspecialBaixadaAnteriormente: { return new SolidColorBrush(Colors.Green); } case StatusParcela.DocumentoNaoEncontrado: case StatusParcela.ParcelaNaoEncontrada: case StatusParcela.DesconsideradaUsuario: case StatusParcela.ParcelaAnteriorNaoBaixada: { return new SolidColorBrush(Colors.Red); } case StatusParcela.DesconsideradaSistema: { return new SolidColorBrush(Colors.Gray); } case StatusParcela.ApoliceDuplicada: { return new SolidColorBrush((Color)Application.Current.Resources["AggerYellow100"]); } default: { return new SolidColorBrush(Colors.Black); } } } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { return (value == null || string.IsNullOrEmpty(value.ToString()) ? 0 : int.Parse(value.ToString())); } public override object ProvideValue(IServiceProvider serviceProvider) { return this; } } }