我正在尝试做一个应该很容易的东西,不幸的是我不知道如何:我想要一个白色的TextBlock diplaying正数和红色的负数(非常原始,嗯)我想这个东西只是在视图方面实现。我看到VisualStateManager,但显然我需要在后面的代码中驱动它来手动更改状态。应该有一些easyer:在WPF中我会使用带有ValueConverter的触发器,Silverlight中是否有类似的内容?
答案 0 :(得分:1)
Silverlight中也是如此。创建一个实现IValueConverter的类,将其添加为控件中的资源。将画笔绑定到感兴趣的属性,然后将Binding expressions Converter属性设置为您的资源。完成。
public class BrushColorConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return ((int)value >= 0) ? new SolidColorBrush(Colors.White) : new SolidColorBrush(Colors.Red);
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException();
}
}