C# 如何绑定控件';在XAML(WPF)中具有某些计算的属性?

C# 如何绑定控件';在XAML(WPF)中具有某些计算的属性?,c#,.net,wpf,C#,.net,Wpf,例如,如果我想画一个正方形,每边50像素,代码如下:; 但是如果我想让高度总是等于宽度的一半,那么代码是不正确的:,那么如何在XAML中实现它呢?类似这样的东西。 代码隐藏: public class MyConverter : IValueConverter { public object Convert(object value, Type targetType, object parameter, CultureInfo culture) { return

例如,如果我想画一个正方形,每边50像素,代码如下:
; 但是如果我想让高度总是等于宽度的一半,那么代码是不正确的:
,那么如何在XAML中实现它呢?

类似这样的东西。 代码隐藏:

public class MyConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        return ((double)value)/2;
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        return null;
    }
}
和xaml:

<local:MyConverter x:key="MyConverter"/>



<Rectangle Width="50" Height="{Binding Path=Width,RelativeSource={RelativeSource Self}, Converter={StaticResource MyConverter}}" Fill="Blue"/>


编写绑定转换器您不能用XAML进行计算,但是可以应用一些转换器来为您进行计算。见: