Files
WCS/Cowain.Base/Converters/StringToUIntConverter.cs
2026-03-02 09:08:20 +08:00

39 lines
1.2 KiB
C#

using Avalonia.Data.Converters;
using System.Globalization;
namespace Cowain.Base.Converters;
public class StringToUIntConverter : IValueConverter
{
/// <summary>
/// 将数据模型中的值转换为字符串,流向 UI 元素时
/// </summary>
/// <param name="value"></param>
/// <param name="targetType"></param>
/// <param name="parameter"></param>
/// <param name="culture"></param>
/// <returns></returns>
public object? Convert(object? value, Type targetType, object? parameter, CultureInfo culture)
{
return value ?? string.Empty;
}
/// <summary>
/// 用户在 UI 中输入或修改了某些内容,并且这些更改需要反映到数据模型时
/// </summary>
/// <param name="value"></param>
/// <param name="targetType"></param>
/// <param name="parameter"></param>
/// <param name="culture"></param>
/// <returns></returns>
public object? ConvertBack(object? value, Type targetType, object? parameter, CultureInfo culture)
{
if (value != null && uint.TryParse(value.ToString(), out var intValue))
{
return intValue;
}
return null;
}
}