using System; using System.Globalization; using System.Windows; using System.Windows.Data; using System.Windows.Markup; namespace SonopostSearchTool { [MarkupExtensionReturnType(typeof(IValueConverter))] public class BoolToVisibilityConverterExtension : MarkupExtension, IValueConverter { public BoolToVisibilityConverterExtension Converter { get; private set; } public override object ProvideValue(IServiceProvider serviceProvider) { return Converter ?? (Converter = new BoolToVisibilityConverterExtension()); } public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { if (value is null || string.IsNullOrEmpty(value.ToString())) { return Visibility.Collapsed; } if (value is bool i && i == true) { return Visibility.Visible; } return Visibility.Collapsed; } public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) { throw new NotImplementedException(); } } }