Свойства формы привязки и прикрепленные свойства к свойствам - PullRequest
0 голосов
/ 16 сентября 2009

У меня есть недвижимость:

public double S { get; set; }

... и XAML:

<Canvas Name="MainCanvas">
    <Ellipse Canvas.Left="10" Canvas.Top="10" Height="10" Name="ellipse1" Stroke="Black" Width="10"/>
</Canvas>

Как связать свойства Width и Height Ellipse и присоединенные свойства Canvas.Left и Top, чтобы я мог задавать значения, которые будут разными долями S?

Таким образом, Canvas.Left и Top могут быть 1 / 2f * S, в то время как ширина и высота могут быть 3 / 4.

1 Ответ

1 голос
/ 16 сентября 2009

Используйте конвертер значений в привязке, чтобы выполнить расчет за вас.

<Ellipse Canvas.Left="{Binding Path=S,Converter=LeftConverter}" ... />

В преобразователе значений вы должны иметь:

public object Convert(object value, Type targetType, object paramenter, CultureInfo culture)
{
   double value = Double.Parse(value);
   return value * 0.5;
}

Этот код не проверен, но должен помочь вам начать. Проверьте этот образец здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...