C# 是否可以从wpf中的ivalueconverter返回多个值?

C# 是否可以从wpf中的ivalueconverter返回多个值?,c#,wpf,xaml,datatemplate,ivalueconverter,C#,Wpf,Xaml,Datatemplate,Ivalueconverter,我有一个wpf列表框,它实现了一个包含TextBlock的DataTemplate <local:BooleanToFontColorConverter x:Key="boolToFontColor" /> <DataTemplate x:Key="ListBox_DataTemplateSpeakStatus"> <Label Width="Auto"> <TextBloc

我有一个wpf列表框,它实现了一个包含TextBlock的DataTemplate

    <local:BooleanToFontColorConverter x:Key="boolToFontColor" />
    <DataTemplate x:Key="ListBox_DataTemplateSpeakStatus">
            <Label Width="Auto">
                    <TextBlock Foreground="{Binding Path=myProperty, Converter={StaticResource boolToFontColor}}" />
            </Label>
    </DataTemplate>
这很有效。更改绑定属性时,字体颜色(前景)将变为红色

我的问题是:我希望我的字体变成红色、粗体和斜体。我知道这可以通过使用textblock内联来实现,但是否可以使用我的转换器来完成这三项工作


感谢所有对此有想法和见解的人。

不要为此使用转换器,请使用a并为属性添加三个相应的
设置器


(您可以返回多个对象,但这将是毫无意义的,因为所有这些属性都只接受一个对象。alernative将使用
Binding.ConverterParameter
,然后您可以在其上切换转换器以返回正确属性的正确值。您仍然需要三个绑定,使用不同的参数each,这很难看)

不要为此使用转换器,使用a并为属性添加三个相应的
设置器


(您可以返回多个对象,但这将是毫无意义的,因为所有这些属性都只接受一个对象。alernative将使用
Binding.ConverterParameter
,然后您可以在其上切换转换器以返回正确属性的正确值。您仍然需要三个绑定,使用不同的参数ea(哦,它很难看)

感谢您的快速评论。我将调查如何使用DataTrigger!谢谢Marc,我知道这就是这个网站的工作方式。我花了一些时间调查DataTrigger,看看这是否真的能解决我的问题。我决定不使用DataTrigger,但如果我选择使用,它们会工作得很好。谢谢您的支持快速评论。我将调查如何使用DataTrigger!谢谢Marc,我知道这就是这个网站的工作方式。我花了一些时间调查DataTrigger,看看这是否真的能解决我的问题。我决定不使用DataTrigger,但如果我选择使用,它们会工作得很好。
public class BooleanToFontColorConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter,
                  CultureInfo culture)
    {
        if (value is Boolean)
        {
            return ((bool)value) ? new SolidColorBrush(Colors.Red) : new SolidColorBrush(Colors.Black);
        }

        return new SolidColorBrush(Colors.Black);
    }

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