如何找到影响 WPF 中控件外观的样式

skj*_*ini 5 wpf styles

如果有很多样式影响同一控件,那么确定运行时使用的样式的最佳方法是什么。似乎很难找到影响设计时的正确样式,因为所使用的样式和画笔可以应用于不同的级别。

例如:我有一个由行和单元格组成的数据网格。当我将鼠标悬停在单元格上时,它会影响边框厚度(从 0,0,1,1 到 0,0,1,0),并且我似乎找不到哪种样式正在影响更改。

Rac*_*hel 4

我通常使用Snoop在运行时调试我的应用程序。它会告诉您当前属性值是什么,以及它来自哪里(尽管有时有点含糊,例如只说“继承”而不是继承它的对象)。

但通常你只能将 a 设置Style为单个值,并且BasedOn最多只能是一种样式,所以我不会经常遇到这个问题。

另一个有用的资源是依赖属性优先级列表,可帮助诊断在多个位置设置相同属性时哪些值优先于其他值。