我正在尝试将转换器拉到应用程序顶部的公共位置。当我这样做时,我最终得到以下错误:
Windows演示文稿中不支持SourceDefaultValueConverter 基金会(WPF)项目。
这是抛出错误的App.xaml:
<Application x:Class="MSMS.DataCollector.App.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:App="clr-namespace:App"
xmlns:commonControls="clr-namespace:CommonControls;assembly=CommonControls"
StartupUri="LoginWindow.xaml">
<Application.Resources>
<App:NinjectServiceLocator x:Key="ServiceLocator" />
<ResourceDictionary x:Key="Resources">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Resources/Converters.xaml"/>
</ResourceDictionary.MergedDictionaries>
<commonControls:FieldLayoutRuntimeControlConverter x:Key="FieldLayoutConverter" />
</ResourceDictionary>
</Application.Resources>
</Application>
当我直接在UserControl中添加资源时,它可以正常工作
<UserControl.Resources>
<commonControls:FieldLayoutRuntimeControlConverter x:Key="FieldLayoutConverter"/>
</UserControl.Resources>
答案 0 :(得分:1)
ServiceLocator
之外有一个资源(ResourceDictionary
)。沿着您的FieldLayoutConverter
资源移动它。我不确定这会导致你的问题,但这肯定是错的,可能会让WPF感到困惑(唉,这并不难)。