我试图将MUI框架用于现有的WPF控件(WPF控件在类库中)。我查看了现代窗口的MUI示例,并尝试复制我在App.xaml中找到的resourceDictionary。
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="/FirstFloor.ModernUI;component/Assets/ModernUI.xaml" />
<ResourceDictionary Source="/FirstFloor.ModernUI;component/Assets/ModernUI.Light.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
但是在运行期间,我得到异常(xamlparse exeption),它有一个内部异常,说它无法找到文件或程序集FirstFloor.ModernUI。
我已经使用nuget包含MUI框架,dll的副本到本地是真的。
我也试过
<ResourceDictionary Source="pack://application:,,,/FirstFloor.ModernUI;component/Assets/ModernUI.xaml" />
<ResourceDictionary Source="pack://application:,,,/FirstFloor.ModernUI;component/Assets/ModernUI.Light.xaml"/>
并且它不起作用。
任何帮助都会受到赞赏!
答案 0 :(得分:0)
pack://application:
显然适用于调用应用程序。在我的例子中,编译的dll是从exectuable(第三方供应商SOLIDWORKS)调用的。我不得不将FirstFloor.ModernUI dll粘贴到解决问题的SOLIDWORKS可执行文件的文件夹中。
如果有人能提供更好的答案(不涉及这种手动干预),我会勾选答案。