Files
petwash/PetWashControl/Converters/BoolToStatusConverter.cs

91 lines
2.6 KiB
C#
Raw Normal View History

2026-02-25 15:43:47 +08:00
using System.Globalization;
using System.Windows.Data;
namespace PetWashControl.Converters;
public class BoolToStatusConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is bool isOpen)
{
return isOpen ? "已打开" : "已关闭";
}
return "未知";
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
public class BoolToWashingConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is bool isWashing)
{
return isWashing ? "清洗中" : "空闲";
}
return "未知";
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
2026-02-25 18:30:24 +08:00
public class BoolToVisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is bool boolValue)
{
return boolValue ? System.Windows.Visibility.Visible : System.Windows.Visibility.Collapsed;
}
return System.Windows.Visibility.Collapsed;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
public class InverseBoolToVisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is bool boolValue)
{
return boolValue ? System.Windows.Visibility.Collapsed : System.Windows.Visibility.Visible;
}
return System.Windows.Visibility.Visible;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
2026-02-26 11:30:31 +08:00
public class ProgressToWidthConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if (value is int progress)
{
// 假设进度条容器宽度为300根据百分比计算实际宽度
return progress * 3.0; // 300px * (progress/100)
}
return 0.0;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}