添加到界面前获取尺寸

简介: 原文:添加到界面前获取尺寸You have few options you can do this, forcing to call Window.Measure and Window.Arrange will make all values to be calculated, or you can get those values in the Window.
原文: 添加到界面前获取尺寸

You have few options you can do this, forcing to call Window.Measure and Window.Arrange will make all values to be calculated, or you can get those values in the Window.Loaded event. This same issue is discussed already on this question.

If you are sizing to content:

window.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity)); window.Arrange(new Rect(0, 0, window.DesiredWidth, window.DesiredHeight));

If you are using an explicit window size:

window.Measure(new Size(Width, Height)); window.Arrange(new Rect(0, 0, window.DesiredWidth, window.DesiredHeight));

or

public MyWindow() { Loaded += delegate { // access ActualWidth and ActualHeight here }; }



Just had the same issue and just calling textblock.Measure(new Size()); aint enough. I had to usetextblock.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity)); to get a result for textblock.DesiredSize



The key is to realize that setting it in code like this:

sp2.Margin = new System.Windows.Thickness{ Left = 5 };

is equivalent to:

sp2.Margin = new System.Windows.Thickness{ Left = 5, Top = 0, Right = 0, Bottom = 0 };
 
目录
相关文章
|
4月前
|
Shell
球从100米高度自由落下
这段代码计算了一个球从100米高度自由落下并在每次触地后反弹至原高度一半的过程,直至第10次落地时总共经过的距离以及第10次反弹的高度。使用循环结构累加每次落下与反弹的距离,并更新反弹高度。最终输出总距离和第10次反弹的高度。
56 5
|
7月前
|
图形学
【unity小技巧】实现FPS武器的瞄准放大效果(UGUI实现反向遮罩,全屏遮挡,局部镂空效果)
【unity小技巧】实现FPS武器的瞄准放大效果(UGUI实现反向遮罩,全屏遮挡,局部镂空效果)
131 1
|
8月前
|
安全 搜索推荐
放大快乐,继续分享5款好用的小软件
分享是一种神奇的东西,它使快乐增大,它使悲伤减小,坚持分享一些好用的软件给大家,今天继续为大家带来五款好用的小软件。
53 2
|
8月前
56.一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
56.一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
63 0
|
数据安全/隐私保护
推荐五个好用的小软件,放大快乐,缩小悲伤
分享是一种力量,它能放大快乐,它能缩小悲伤,我喜欢分享一些好用的软件给大家,今天也要继续这个习惯,为大家介绍五个好用的小软件。
101 0
一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高
一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高
548 0
一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高
带动画渐进效果与颜色渐变的圆弧进度控件设计(一)
带动画渐进效果与颜色渐变的圆弧进度控件设计
146 0
带动画渐进效果与颜色渐变的圆弧进度控件设计(一)
办公软件在多屏宽屏上的应用设想
办公软件在多屏宽屏上的应用设想
106 0
带动画渐进效果与颜色渐变的圆弧进度控件设计(二)
带动画渐进效果与颜色渐变的圆弧进度控件设计
117 0