C# WPF设计器的资源
我的WPF应用程序中的对象结构如下(简化): 主窗口C# WPF设计器的资源,c#,wpf,xaml,user-controls,resources,C#,Wpf,Xaml,User Controls,Resources,我的WPF应用程序中的对象结构如下(简化): 主窗口 <Window> <Window.Resources> <ResourceDictionary> <ResourceDictionary.MergedResources> <ResourceDictionary Source="Styles.xaml" /> </Resour
<Window>
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedResources>
<ResourceDictionary Source="Styles.xaml" />
</ResourceDictionary.MergedResources>
</ResourceDictionary>
</Window.Resources>
<ContentControl>
<ContentControl.Resources>
<DataTemplate DataType="{x:Type local:MyViewModel}">
<local:MyEditor />
</DataTemplate>
</ContentControl.Resources>
</ContentControl>
...
...
然后,编辑:
<UserControl>
<!-- No resources here - getting styles from parent -->
...
</UserControl>
...
主窗口中的资源是动态管理的(在某些情况下,我会清除它们并加载另一个集合以匹配应用程序的主题),因此我不能将样式嵌入UserControl
(否则我也必须动态加载UserControl
中的样式)。当然,除此之外,我实际上甚至不必将这些样式嵌入到用户控件中,因为它将从父控件获取它们
但是
如果我没有在XAML中指定指向资源的链接,那么设计器看起来非常悲伤(尽管UserControl的结构很复杂):
有没有办法只为设计师提供相关资源的信息?您是否尝试过将默认样式移动到App.xaml?@Aybe我无法。我正在开发Visual Studio扩展,无法访问App.xaml:(