У меня была такая же проблема, пока я не переместил конвертер в файл App.xaml в разделе ресурсов. Это мой пример файла App.xaml, я только что создал конвертер с именем TextConverter для примера.
Есть два способа сделать это, если вы используете другие ResourceDictionaries, вы должны использовать ResourceDictionary.MergedDictionaries во всех случаях, как показано ниже:
<Application x:Class="WPFFeatureSample_Application.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:converters="clr-namespace:WPFFeatureSample_Application.Converters"
StartupUri="MainWindow.xaml">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary>
<converters:TextConverter x:Key="TextConverter1"></converters:TextConverter>
</ResourceDictionary>
<ResourceDictionary Source="Resources/ControlDictionary.xaml"></ResourceDictionary>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
Если у вас нет других файлов ресурсов, это выглядело бы так:
<Application x:Class="WPFFeatureSample_Application.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:converters="clr-namespace:WPFFeatureSample_Application.Converters"
StartupUri="MainWindow.xaml">
<Application.Resources>
<ResourceDictionary>
<converters:TextConverter x:Key="TextConverter1"></converters:TextConverter>
</ResourceDictionary>
</Application.Resources>
Одна интересная ссылка при использовании конвертеров и ресурсных словарей в целом такова:
http://www.dotnetdude.com/2011/01/23/ResourceDictionariesAreMakingMyHairHurt.aspx