如何在WPF中设置列表框项的字体大小写?

时间:2013-07-23 05:21:27

标签: c# wpf wpf-controls

我在WPF窗口中有一个ListBox。 根据{{​​1}}的所选项,从数据库中检索ComboBox项并绑定为ListBox的ListBox。 我想更改ItemSource项的大小写,即,当我绑定所有项时都是大写的。我想改变大小写,只大写一个单词的起始字母。

1 个答案:

答案 0 :(得分:1)

您需要转换器才能实现此行为。

public class CaseConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {            
        TextInfo textInfo = culture.TextInfo;
        return  textInfo.ToTitleCase(value.ToString());
    }

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

将此添加为资源

<Window.Resources>
    <local:CaseConverter x:Key="MyCaseConverter"></local:CaseConverter>
</Window.Resources>

并在XAML中将其用作

<TextBlock Text="{Binding Name, Converter={StaticResource MyCaseConverter}}"/>