Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.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 仅偶尔使用的样式_Wpf_Windows 7_Prism - Fatal编程技术网

Wpf 仅偶尔使用的样式

Wpf 仅偶尔使用的样式,wpf,windows-7,prism,Wpf,Windows 7,Prism,我有一个项目,它为整个应用程序中使用的控件定义了一组默认样式。但是,某些样式的应用并不一致。例如,进度条最初呈现如下: 但在随后的应用程序中,它会正确呈现: 我使用的是MicrosoftPrism,如果这有区别的话——当控件最初被导航到时,进度条呈现不正确,但当控件从中导航到后再次被导航到时,进度条会自动更正 同样奇怪的是,样式似乎被部分应用-自定义形状始终正确应用,但颜色却不正确 我想我正在以标准方式导入资源字典: <UserControl> <UserControl.R

我有一个项目,它为整个应用程序中使用的控件定义了一组默认样式。但是,某些样式的应用并不一致。例如,进度条最初呈现如下:

但在随后的应用程序中,它会正确呈现:

我使用的是MicrosoftPrism,如果这有区别的话——当控件最初被导航到时,进度条呈现不正确,但当控件从中导航到后再次被导航到时,进度条会自动更正

同样奇怪的是,样式似乎被部分应用-自定义形状始终正确应用,但颜色却不正确

我想我正在以标准方式导入资源字典:

<UserControl>
  <UserControl.Resources>
    <ResourceDictionary>
      <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="pack://application:,,,/MyAssembly;component/Themes/Generic.xaml"/>
        <!-- other resource dictionaries here -->
      </ResourceDictionary.MergedDictionaries>
    </ResourceDictionary>
  </UserControl.Resources>
</UserControl>
你知道为什么某些风格的应用不一致吗

编辑:我刚刚看到它以黑白显示


我明白了。原来我用来设置ProgressBar主题的样式引用了一个未定义的DynamicSource。显然,这导致了我所经历的不可预知的行为


作为补充说明,我必须导入ResourceDictionary,它定义了我在App.xaml中需要的DynamicSource,而不仅仅是在使用ProgressBar的UserControl中。上述三个进度条快照是否都来自同一屏幕?我还注意到资源是在UserControl.resources中定义的,而不是在Application.resources中定义的。