WPF松散的XAML ResourceDictionary

时间:2014-01-30 19:12:03

标签: wpf xaml wpf-controls resourcedictionary

我正在尝试在松散的XAML中使用ResourceDictionary并将其加载到运行时以向WPF应用程序提供模板和样式。我在本地目录中提供了XAML,并在app启动时使用URI向App.Current.Resources.MergedDictionaries添加了一个新的ResourceDictionary。

当XAML进行解析时,它会在模板上爆炸,其中TargetType是来自正在使用它的程序集的自定义控件。

具体信息是:

'无法从文本'controls:CustomType'创建'类型'。'

我已经在顶部的ResourceDictionary中映射了名称空间:

的xmlns:对照= “CLR-名称空间:TEST.UI.WPF.Common.Controls”

有文章说明从松散的XAML加载ResourceDictionaries是可能的,但我找不到那些在这些松散的XAML文件中的自定义类型。

感谢任何帮助!

1 个答案:

答案 0 :(得分:5)

由于您在运行时加载它并且它不是在项目中构建的,因此ResourceDictionary不知道您的程序集。您必须在程序集中包含程序集才能识别它。

xmlns:controls="clr-namespace:TEST.UI.WPF.Common.Controls;assembly=Common"

在将'; assembly = yourAssembly '添加到命名空间声明后,您应该可以运行应用程序。

相关问题