Вы можете создать IValueConverter
, который преобразует целое число в логическое значение на основе CutOff
. Затем используйте DataTrigger.Value
из True
(или False
, в зависимости от того, что вы возвращаете).
WPF DataTrigger
, если я правильно помню, - это строго равенство сравнения.
Так что-то похожее на:
public class CutoffConverter : IValueConverter {
object Convert(object value, Type targetType, object parameter, CultureInfo culture) {
return ((int)value) > Cutoff;
}
object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) {
throw new NotImplementedException();
}
public int Cutoff { get; set; }
}
Затем используйте следующий XAML.
<Window.Resources>
<myNamespace:CutoffConverter x:Key="AgeConverter" Cutoff="30" />
</Window.Resources>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding Path=Age,
Converter={StaticResource AgeConverter}}">
<DataTrigger.Value>true</DataTrigger.Value>
<Setter TargetName="Age" Property="Foreground" Value="Red"/>
</DataTrigger>
</DataTemplate.Triggers>