Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/14.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
Wpf 如何从ViewBase中的不同部件访问动态资源_Wpf_Xaml_Resources_.net Assembly_Dynamicresource - Fatal编程技术网

Wpf 如何从ViewBase中的不同部件访问动态资源

Wpf 如何从ViewBase中的不同部件访问动态资源,wpf,xaml,resources,.net-assembly,dynamicresource,Wpf,Xaml,Resources,.net Assembly,Dynamicresource,我正在使用一个Xaml文件,该文件是从ViewBase派生的自定义视图,我希望访问另一个程序集中的DynamicSource。我已经看到可以使用以下内容: <Application.Resources> <ResourceDictionary Source="/mylib;Resources/MyStyleDictionary.xaml" /> </Application.Resources> <myLib:ViewBase>

我正在使用一个Xaml文件,该文件是从ViewBase派生的自定义视图,我希望访问另一个程序集中的DynamicSource。我已经看到可以使用以下内容:

<Application.Resources>
    <ResourceDictionary
    Source="/mylib;Resources/MyStyleDictionary.xaml" />
</Application.Resources>
<myLib:ViewBase> 
    <Grid>
        <Button>
            Style="{DynamicResource MyButtonStyle}" // I want this style to come from a different assembly
        </Button>
    </Grid>
 </myLib:ViewBase>

但是,我处理的xaml文件类似于:

<Application.Resources>
    <ResourceDictionary
    Source="/mylib;Resources/MyStyleDictionary.xaml" />
</Application.Resources>
<myLib:ViewBase> 
    <Grid>
        <Button>
            Style="{DynamicResource MyButtonStyle}" // I want this style to come from a different assembly
        </Button>
    </Grid>
 </myLib:ViewBase>

Style=“{DynamicResource MyButtonStyle}”//I希望此样式来自不同的程序集

我该怎么做

了解动态资源和静态资源之间的区别很重要

但要回答这个问题:

<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="/SomeOtherAssembly;Resources/SomeOtherDictionaryWithMyButtonStyleKey.xaml" />
            <ResourceDictionary Source="/mylib;Resources/MyStyleDictionary.xaml" />
        </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
</Application.Resources>


该资源正在被动态引用,因此在合并MyStyleDictionary.xaml之前,使用MyButtonStyleKey.xaml合并其他字典应该可以工作。

谢谢,但是此应用程序。资源将放在哪里?我使用的是ViewBase xaml,在这个项目中,无论资源级别如何,我都没有App.xaml。资源是FrameworkElement上的属性。