Я пытаюсь привязать свойство Fill к значению bool IsBottomSelected в ModelView, используя ValueConverter
Вот мой xaml для полигона:
<Polygon Name="h_bottom" Points="50,50 0,100 100,100 50,50" Stroke="Green" StrokeThickness="3" MouseLeftButtonDown="h_bottom_MouseDown" >
<Polygon.Fill>
<Binding Path="IsBottomSelected">
<Binding.Converter>
<view:BoolToColorConverter/>
</Binding.Converter>
</Binding>
</Polygon.Fill>
</Polygon>
и это ValueConverter:
public class BoolToColorConverter : IValueConverter
{
object IValueConverter.Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
try
{
if (Convert.ToBoolean(value.ToString())) return new SolidColorBrush(Colors.Cyan);
}
catch { }
return new SolidColorBrush(Colors.White);
}
object IValueConverter.ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
return null;
}
}
Тот же код работает в WPF, в Silverlight 5 ValueConverter не запускается.