无效控制宽度/高度,通过对齐拉伸重新计算

时间:2016-09-26 08:37:42

标签: c# xaml uwp uwp-xaml

我有一个控件,它的位置和大小取决于可以在运行时更改的属性值。它的宽度或高度可以通过水平/垂直对齐来设置为"拉伸"。

我有一个场景,我是第一个在一个模式,我希望它垂直拉伸。我在后面的代码中手动设置宽度,并将VerticalAlignment设置为Stretch。然后属性得到更新,我想明确设置高度并将Horizo​​ntalAlignment设置为Stretch。

我甚至添加了对

的调用
this.InvalidateMeasure();
this.InvalidateArrange();

属性更改后,但似乎无法正常工作。例如,在将高度设置为数字之后,它不会像我想要的那样被覆盖。

MSDN page确实声明:

  

当在元素上显式设置高度和宽度属性时,这些测量在布局期间采用更高的先例,并取消将Horizo​​ntalAlignment设置为拉伸的典型效果。

那么我该如何" unset"控件的宽度/高度属性?

1 个答案:

答案 0 :(得分:0)

您可以将高度设置为Double.NaN,将宽度设置为Double.NaN