using System; using Avalonia; using Avalonia.Data; using Avalonia.Data.Converters; using Avalonia.Markup.Xaml; using Avalonia.Markup.Xaml.MarkupExtensions; namespace AutoCat.Extensions; public class ThicknessExtension: MarkupExtension { public string Path { get; set; } public double Mult { get; set; } = 1; public double Add { get; set; } = 0; public override object ProvideValue(IServiceProvider serviceProvider) { var binding = new ReflectionBindingExtension(Path) { Mode = BindingMode.OneWay, Converter = new FuncValueConverter(e => new Thickness( e*Mult + Add)) }; return binding.ProvideValue(serviceProvider); } }