gpt4 book ai didi

wpf - 如何通过 TextBlock 文本值设置 TextBlock 的 Foreground 属性?

转载 作者:行者123 更新时间:2023-12-01 09:38:13 30 4
gpt4 key购买 nike

可以通过 TextBlock 文本值设置 TextBlock 的前景属性吗?
例如:文本值是Mike,前景属性是Black,值是Tim,属性值是green等。我用google搜索,但没有找到任何解决方案。

最佳答案

如果你想灵活地做一些智能的事情,比如动态地将文本映射到颜色等等,你可以使用一个 Converter 类。我假设文本设置为绑定(bind)到某些东西,您可以在前台绑定(bind)到相同的东西,但通过自定义转换器:

<TextBlock Text="{Binding Path=Foo}" 
Foreground="{Binding Path=Foo, Converter={StaticResource myConverter}" />

您的转换器将被定义为:
public class ColorConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
string text = (string)value;
switch (text)
{
case "Mike":
return Colors.Red;
case "John":
return Colors.Blue;
default:
return Colors.Black;
}
}

public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return null;
}
}

显然,您可以使用更智能的逻辑来处理新值等,而不是简单的 switch 语句。

关于wpf - 如何通过 TextBlock 文本值设置 TextBlock 的 Foreground 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4099837/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com