VPet/VPet.Solution/Converters/IsBoolConverter.cs
Hakoyu 61e9b9e5af # VPet.Solution
## 修复
- `Settings.lps`不存在时启动失败的问题
- 读取模组信息时失败的问题
2024-02-04 17:37:45 +08:00

63 lines
1.5 KiB
C#

using System.ComponentModel;
using System.Globalization;
using System.Windows;
namespace HKW.WPF.Converters;
/// <summary>
/// 是布尔值转换器
/// </summary>
public class IsBoolConverter : ValueConverterBase
{
/// <summary>
///
/// </summary>
public static readonly DependencyProperty BoolValueProperty = DependencyProperty.Register(
nameof(BoolValue),
typeof(bool),
typeof(AllIsBoolToVisibilityConverter),
new PropertyMetadata(true)
);
/// <summary>
/// 目标布尔值
/// </summary>
[DefaultValue(true)]
public bool BoolValue
{
get => (bool)GetValue(BoolValueProperty);
set => SetValue(BoolValueProperty, value);
}
/// <summary>
///
/// </summary>
public static readonly DependencyProperty NullValueProperty = DependencyProperty.Register(
nameof(NullValue),
typeof(bool),
typeof(AllIsBoolToVisibilityConverter),
new PropertyMetadata(false)
);
/// <summary>
/// 为空值时布尔值
/// </summary>
[DefaultValue(false)]
public bool NullValue
{
get => (bool)GetValue(NullValueProperty);
set => SetValue(NullValueProperty, value);
}
/// <inheritdoc/>
public override object Convert(
object value,
Type targetType,
object parameter,
CultureInfo culture
)
{
return HKWUtils.HKWUtils.GetBool(value, BoolValue, NullValue);
}
}