当我在网页上绘制布局时,使用CSS,可能存在数十个分散在数十个文件中的规则,这些规则可能会影响元素的实际显示方式。这就是为什么DOM探索者是如此重要的工具 - 我可以在浏览器上选择一个元素,并确切地看到CSS规则应用于它。
在WPF中,可以再次有许多规则 - 样式和模板以及从代码隐藏注入的内联属性和设置 - 可能会相互作用以确定给定元素的显示方式。
有没有办法让我看一个元素,比如一个ComboBox,并快速确定为什么它绘制的高度是我认为的三倍?
答案 0 :(得分:6)
就个人而言,我使用的是Snoop。我不熟悉Mole,但我听说它“更好”(主观),虽然它不是免费的。但是有一个使用Snoop的技巧,如果你创建的窗口不是主窗口,你可以通过执行Ctrl + Shift + MouseOver(实际上是当前的可视控件)来定位它。这花了我一段时间才弄明白,并且知道这非常有用!
答案 1 :(得分:0)
我不时使用的一个免费工具是Snoop。这对简单的事情有好处,但可能会在复杂的事情上崩溃
答案 2 :(得分:0)
WPF视觉效果的位置/大小布局不是按照CSS的方式根据一些声明性规则集计算的。 WPF布局使用命令式代码进行,因此无法通过查看起始XAML或生成的可视化树来了解它是如何实现的。
StackPanel之类的容器控件使用命令式代码以预期的堆叠方式布局子代。因为我们碰巧知道它将如何运作,所以很容易认为这是事先很容易知道的。但是,如果您创建一个自定义控件来决定以完全随机的方式布局控件呢?你永远无法展示最终结果是如何实现的。