Files
ShrlAlgoToolkit/WPFluent/Converters/BooleanConverter.cs

27 lines
743 B
C#
Raw Normal View History

2024-09-22 11:05:41 +08:00
using System;
using System.Windows.Data;
namespace WPFluent.Converters;
2024-09-22 11:05:41 +08:00
public class BooleanConverter<T> : IValueConverter
{
public BooleanConverter(T trueValue, T falseValue)
{
TrueValue = trueValue;
FalseValue = falseValue;
}
2025-05-05 17:04:06 +08:00
public virtual object Convert(object value, Type targetType, object parameter, CultureInfo culture) =>
value is bool boolValue &&
boolValue
? TrueValue
: FalseValue;
2024-09-22 11:05:41 +08:00
public virtual object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) => value is T tValue &&
EqualityComparer<T>.Default.Equals(tValue, TrueValue);
2024-09-22 11:05:41 +08:00
public T FalseValue { get; set; }
public T TrueValue { get; set; }
2024-09-22 11:05:41 +08:00
}