Files
WCTDataMiner/src/WCTDataMiner.Wpf/Converters/BooleanConverters.cs
2026-07-03 10:49:23 +08:00

53 lines
1.3 KiB
C#

using System.Globalization;
using System.Windows;
using System.Windows.Data;
namespace WCTDataMiner.Wpf.Converters;
/// <summary>
/// Boolean to Visibility 转换器
/// </summary>
public class BooleanToVisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is bool boolValue)
{
return boolValue ? Visibility.Visible : Visibility.Collapsed;
}
return Visibility.Collapsed;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is Visibility visibility)
{
return visibility == Visibility.Visible;
}
return false;
}
}
/// <summary>
/// 反转 Boolean 转换器
/// </summary>
public class InverseBooleanConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is bool boolValue)
{
return !boolValue;
}
return true;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is bool boolValue)
{
return !boolValue;
}
return false;
}
}