Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF设计器的资源_C#_Wpf_Xaml_User Controls_Resources - Fatal编程技术网

C# 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

我的WPF应用程序中的对象结构如下(简化):

主窗口

<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:(