using System; using System.Globalization; using Avalonia.Data.Converters; namespace AI.Converters { /// /// 表单数字字段与字符串双向转换(NumericUpDown Value 与 CurrentValue 绑定) /// public class FormNumberConverter : IValueConverter { public object? Convert(object? value, Type targetType, object? parameter, CultureInfo culture) { if (value is string s && double.TryParse(s?.Trim(), NumberStyles.Any, culture, out var n)) return n; return 0d; } public object? ConvertBack(object? value, Type targetType, object? parameter, CultureInfo culture) { if (value is double d) { return d.ToString(culture); } if (value is decimal dec) { return dec.ToString(culture); } return "0"; } } }