1

我来自 WinForms 背景,所以 WPF 对我来说是陌生的。我正在尝试它并尝试制作一个简单的Hello World!应用程序,除了应用程序在运行时的显示方式与在设计器中的显示方式不同。

我的意思是我有一个“你好!”,在设计器中,按钮的位置是 12、12,并且窗口的大小是这样的,按钮的右/下边缘是 12、12 像素从窗口的右/下边缘(因此按钮周围有统一的 12 个像素)。当我运行该应用程序时,该按钮仍然距离顶部和左侧边缘 12、12 像素,但距离窗口的右侧/底部边缘 27、27 像素。我已验证按钮尺寸是否正确(我截取了屏幕截图并在 Adob​​e Photoshop 中测量了按钮,并验证了 XAML 代码中的按钮宽度和高度与屏幕上显示的相同)。窗口是越来越大的东西。

我还通过显式设置宽度和高度、更改背景颜色以及将水平/垂直对齐设置为左/上来验证它不是画布变大。所以当我再次运行它时,画布的大小保持不变,但窗口的右侧/底部仍然有额外的 15 个像素。

我已经尝试过谷歌搜索并在这里搜索这个问题,但找不到关于为什么运行时与设计器不同的解释。

我应该注意我使用的是 Visual 2010,并且我使用的是简单的布局。

无论如何,感谢任何关于为什么我得到 15 个额外像素的线索。

(注意我会发布一个截图,但作为一个新用户我是不允许的)。

4

1 回答 1

1

您可以使用Snoop 之类的工具来诊断此问题。它应该允许您检查应用程序的整个可视化树,并确定哪个 UIElement 负责额外的像素。

于 2013-08-30T03:29:47.800 回答