Files
XplorePlane/XP.Hardware.PLC.Sentry/Converters/LogLevelToColorConverter.cs
T

35 lines
1.2 KiB
C#

using System;
using System.Globalization;
using System.Windows.Data;
using System.Windows.Media;
using XP.Hardware.PLC.Sentry.Models;
namespace XP.Hardware.PLC.Sentry.Converters
{
/// <summary>
/// 日志级别到前景色转换器 | Log level to foreground color converter
/// </summary>
public class LogLevelToColorConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is SentryLogLevel level)
{
return level switch
{
SentryLogLevel.Info => new SolidColorBrush(Color.FromRgb(0x33, 0x33, 0x33)),
SentryLogLevel.Warning => new SolidColorBrush(Color.FromRgb(0xFF, 0x8F, 0x00)),
SentryLogLevel.Error => new SolidColorBrush(Color.FromRgb(0xD3, 0x2F, 0x2F)),
_ => new SolidColorBrush(Color.FromRgb(0x33, 0x33, 0x33))
};
}
return new SolidColorBrush(Color.FromRgb(0x33, 0x33, 0x33));
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
}