更新
This commit is contained in:
39
AntdWpf/Converters/DoubleToThicknessMultiConverter.cs
Normal file
39
AntdWpf/Converters/DoubleToThicknessMultiConverter.cs
Normal file
@@ -0,0 +1,39 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Data;
|
||||
using System.Windows.Markup;
|
||||
using System.Windows;
|
||||
|
||||
namespace AntdWpf.Converters
|
||||
{
|
||||
public class DoubleToThicknessMultiConverter : MarkupExtension, IMultiValueConverter
|
||||
{
|
||||
public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture)
|
||||
{
|
||||
var parent = values[0] as double?;
|
||||
var self = values[1] as double?;
|
||||
|
||||
if (parent == null || self == null)
|
||||
{
|
||||
return default(Thickness);
|
||||
}
|
||||
|
||||
double.TryParse(parameter as string, out double param);
|
||||
return new Thickness(parent.Value - self.Value - param, 0.0, 0.0, 0.0);
|
||||
}
|
||||
|
||||
public object[] ConvertBack(object value, Type[] targetTypes, object parameter, CultureInfo culture)
|
||||
{
|
||||
return targetTypes.Select(t => DependencyProperty.UnsetValue).ToArray();
|
||||
}
|
||||
|
||||
public override object ProvideValue(IServiceProvider serviceProvider)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user