using System; using System.Globalization; using System.Windows; using System.Windows.Data; namespace UILib { public class BoolVisiableConverter : IValueConverter { public static BoolVisiableConverter Instance = new BoolVisiableConverter(); public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (value is bool flag) { if (parameter?.ToString() == "REV") { return flag ? Visibility.Collapsed : Visibility.Visible; } return flag ? Visibility.Visible : Visibility.Collapsed; } return Visibility.Collapsed; } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { if (value is Visibility flag) { if (parameter?.ToString() == "REV") { return flag == Visibility.Visible ? false : true; } return flag == Visibility.Visible ? true : false; } return false; } } }