StepStatusToColorConverter.cs
1.5 KB
using System.Globalization;
namespace IndustrialControl.Converters
{
public sealed class StepStatusToColorConverter : IValueConverter
{
// "完成" -> 绿;"进行中" -> 蓝;其他/空 -> 灰
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
var s = (value as string)?.Trim();
if (string.Equals(s, "完成", StringComparison.OrdinalIgnoreCase)) return Color.FromArgb("#4CAF50");
if (string.Equals(s, "进行中", StringComparison.OrdinalIgnoreCase)) return Color.FromArgb("#3F88F7");
return Color.FromArgb("#BFC6D4");
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) => throw new NotSupportedException();
}
public sealed class StepStatusToTextColorConverter : IValueConverter
{
// 圆点内部数字的前景色:深色(完成/进行中)- 白;未开始 - #607080
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
var s = (value as string)?.Trim();
if (string.Equals(s, "完成", StringComparison.OrdinalIgnoreCase)) return Colors.White;
if (string.Equals(s, "进行中", StringComparison.OrdinalIgnoreCase)) return Colors.White;
return Color.FromArgb("#607080");
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) => throw new NotSupportedException();
}
}