Using Value Converters in WPF without having to define them as resources first

c#, converters, data-binding, wpf

Solution

In the case of singleton-type `IValueConverter`s (e.g. they don't need any state from the current binding instance) I use static converters, i.e.:

Converter={x:Static SomeNamespace:SomeConverter.Instance}

There's also a great post by Dr. WPF on using a markup extension to make it cleaner inline here.

Problem

Is it possible to use value converters without having to define them beforehand as resources? Right now I have ``` <Window.Resources> <local:TrivialFormatter x:Key="trivialFormatter" /> </Window.Resources> ``` and ``` <Button Width="{Binding Width, ElementName=textBox1, UpdateSourceTrigger=PropertyChanged, Converter={StaticResource trivialFormatter}}"> ``` Wouldn't it be possible that instead of having to declare the trivialFormatter resource in Window.Resources, I could directly refer it from the Button's width binding? Something like ``` Converter = {local:TrivialFormatter} ``` Thanks

Original source