gpt4 book ai didi

wpf - 绑定(bind)文本 block 样式/转换器

转载 作者:行者123 更新时间:2023-12-03 10:55:39 24 4
gpt4 key购买 nike

我有:

<TextBlock Text="{Binding OrderType}"/>

OrderType 是一个字符串,可能是 A、B、C、D。但是我希望文本 block 在(A 或 B)时显示"is",如果(C 或 D)时显示“否”,但希望前景色为绿色,如果 A,蓝色,如果 B,黄色,如果 C,红色,如果 D。最好的方法是什么?如果我使用转换器,样式触发器应该绑定(bind)到什么或者是否有更好的方法,我有点困惑。谢谢。

最佳答案

为此,您应该使用 IValueConverter:

public class OrderTypeToYesNoConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
if(value != null)
{
string val = value.ToString();
if(val == "A" || val == "B")
return "YES";
}
return null;
}

public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}

XAML
<Window
..
..
xmlns:converters="clr-namespace:NameSpace;assembly=Assembly">
<Window.Resources>
<converters:OrderTypeToYesNoConverter x:Key="OrderTypeToYesNoConverter"/>
</Window.Resources>

<TextBlock Text="{Binding OrderType, Converter="{StaticResource OrderTypeToYesNoConverter}"/>

关于wpf - 绑定(bind)文本 block 样式/转换器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8930201/

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