Archives

Currently Reading

Interesting TimesSoul MusicMen at ArmsLords and LadiesWitches AbroadReaper Man

More of Sytone's books »
Book recommendations, book reviews, quotes, book clubs, book trivia, book lists

WPF Converter: CaseConverter

Case Converter was made when I wanted the text to display in a WPF UI in upper case. Probably not the best class name, but anyway. To get the code and install read on.

Make any UI string uppercase. Once you have registered the resource and created the class just use the converter in the element you want converted.

<TextBlock Text="{Binding Title, Converter={StaticResource CaseConverter}}"/>

Add the following element to the XAML, usually in Window.Resources and ensure that you have registered your namespace for local to the namespace of your application. e.g. xmlns:local=”clr-namespace:ExampleApp”

<local:CaseConverter x:Key="CaseConverter" />

This is the class, short and sweet.

    public class CaseConverter : IValueConverter
    {
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            string text = value as string;
            if(text != null)
            {
                return text.ToUpper(culture);
            }

            return value;
        }

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