我正在将WPF应用程序从VS 2010迁移到VS 2012。
我有一个主要的可执行文件,其中包含App.xaml和一个用于所有WPF内容的单独的类库。 在VS2012(SP3)中,XAML设计器不会显示App.xaml中定义的MergedResourceDictionary中的任何样式,VS 2010会...
出于测试目的,我将App.xaml移到了我的类库中。之后,VS 2012设计师正确地展示了一切。
由于类库不能包含App.xaml,因此这不是解决方案。
有什么想法吗?
我的App.xaml如下所示:
<Application x:Class="MyApplication.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Startup="AppStartup">
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="pack://application:,,,/OtherAssemblyName;component/Resources/Resource1.xaml" />
<ResourceDictionary Source="pack://application:,,,/OtherAssemblyName;component/Resources/Resource2.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
答案 0 :(得分:0)
知道这是一个老问题,但是对于任何可能在未来面临类似事情的人都要回答它。
最安全的方法是创建一个新的ResourceDictionary文件,并在其中添加MergedResourceDictionaries。
然后在用户控件/ pages / windows中引用ResourceDictionary - 所有这些,自
以来<UserControl.Resources>
<ResourceDictionary Source="GlobalResources.xaml" />
<UserControl.Resources>