Files
ShrlAlgoToolkit/ShrlAlgoToolkit.Mvvm/Converters/NotNullToVisibilityConverter.cs

38 lines
1.0 KiB
C#
Raw Normal View History

2025-07-11 09:20:23 +08:00
using System;
using System.Globalization;
using System.Linq;
using System.Windows;
using System.Windows.Data;
namespace ShrlAlgoToolkit.Mvvm.Converters
{
/// <summary>
/// Converts null or not null to a <see cref="Visibility" />.
/// </summary>
public class NotNullToVisibilityConverter : IValueConverter
{
/// <summary>
/// The visibility value if the argument is null.
/// </summary>
public Visibility NullValue { get; set; }
/// <summary>
/// Creates a new <see cref="NotNullToVisibilityConverter" />.
/// </summary>
public NotNullToVisibilityConverter()
{
NullValue = Visibility.Collapsed;
}
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
return value == null ? NullValue : Visibility.Visible;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return Binding.DoNothing;
}
}
}