WPF比例基于孩子的画布宽度

时间:2018-09-24 13:27:58

标签: c# wpf windows

我在Canvas内有一个Grid,宽度为columndefinition的{​​{1}}。画布不会自动放大以容纳其元素。它的宽度始终为Auto。我必须手动对宽度进行硬编码。

zero

我希望画布的宽度根据元素缩放。我该怎么办?

1 个答案:

答案 0 :(得分:1)

Canvas不能以这种方式工作。来自MSDN

  

画布是唯一没有固有布局的面板元素   特征。画布的默认“高度”和“宽度”属性为   零,除非它是自动调整大小的元素的子元素   它的子元素。画布的子元素永远不会调整大小,它们   仅位于其指定的坐标处。这提供   固有尺寸限制或   不需要对齐。对于您想要孩子的情况   要自动调整大小和对齐的内容,通常最好   使用Grid元素。

如果出于某些原因您仍想使用Canvas。您可以绑定到Width的{​​{1}}。就像

TextBox