2010-09-19 32 views

回答

2

ActualWidth/ActualHeight会给你窗口的实际尺寸 - 由布局系统给出,它是基于窗口的实际渲染。这些应该是你正在寻找的尺寸。然而,计算可能会有一些延迟,因为它是基于渲染的,所以如果他们错了,我猜他们还没有计算 - 而且你的竞争状况正在进行..你可以在链接中阅读更多信息上面有哪些关于何时计算实际大小的重要说明 - 以及为什么它们可能会被延迟。

Width/Height是请求的大小,如果没有明确设置,它们将保留其默认值,即Double.NaN。

+0

我在渲染之前需要窗口的大小,动画有一种与缩放相结合的淡入淡出效果,需要居中。 – laci37 2010-09-19 20:45:21

0

只要有可能,您应该使用ScaleTransform而不是在动画更改尺寸时更改HeightWidth值。它不仅可以提高性能,还可以解决这类问题,因为不是设置一个您可能不知道的特定大小值,而是将比例值指定为百分比。

+0

我需要居中ScaleTransform。我不更改高度和宽度,它们仅通过自动调整和缩放来改变 – laci37 2010-09-20 19:34:01

2

您可以使用窗口的UpdateLayout() - 验证ActualWidthActualHeight的方法。

+0

使我的一天。非常感谢 :) – 2016-04-17 17:32:25