Sytone's Ramblings

The occasional posts of a guy who plays with technology.

WPF Converter: CaseConverter

2010-08-29 1 min read Development

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;
        }
    }
    ```