WPF中的FrameworkElement存在两个属性,Height和ActualHeight。
其中ActualHeight表示的是元素重绘制后的尺寸,并且是只读的。也就是说其始终是真实值。

而Height属性,是可读写的,并且有如下特性:
(1)Height属性值可以为0或者是Double.NaN。出现Double.NaN值是因为Xaml中设置了元素的Size为Auto。
(2)当我们设置Height值时,UI元素未必以设置的Height值进行显示,因为Height值仅仅是一个建议值,最终显示的尺寸即ActualHeight并不一定等于此建议值。
例如,
当Height的值小于MinHeight值时,元素将以MinHeight值进行显示,此时ActualHeight=MinHeight。
当Height的值大于MaxHeight值时,元素将以MaxHeight值进行显示,此时ActualHeight=MaxHeight。

综上,当我们开发的程序中需要读取元素高度时,应该采用ActualHeight,而不是Height。

Sample显示界面如下:


sample代码上传到此了:http://download.csdn.net/detail/u013376417/8420575

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Post Navigation