WPF:为什么会导致堆栈溢出异常?

时间:2010-02-05 00:24:49

标签: .net wpf exception styles stack-overflow

当我添加此样式时,它会使用StackOverflowException中断我的应用程序。

<Style TargetType="GroupBox" BasedOn="{StaticResource {x:Type GroupBox}}" >
<!-- <Setter Property="Background" Value="{DynamicResource WindowBackgroundBrush}" /> -->
</Style>

如果重要,我正在使用ShinyBlue主题。

任何想法会导致什么?

2 个答案:

答案 0 :(得分:2)

这是一个“已知问题”,至少我记得我也有它,并且它使用基于默认样式的控件再现,控件在主题中也有一些默认样式。 AFAIR,我使用了我自己的主题,所以我只是去为这些样式命名,并使用名称而不是{x:Type GroupBox}并且它帮助了我,但如果你不能这样做,the Internets advise你将派生的样式移动到较低的XAML范围。

至于异常的根本原因AFAIR,默认样式分辨率中存在一个错误,它将主题样式作为自定义样式的默认样式,然后将自定义样式作为主题的默认样式,因此等等,SO!

答案 1 :(得分:1)

尝试更改静态资源的名称。