拥有一个宽度不得超过700px的UserControl。将其MaxWidth设置为700px。
里面是一个网格 - 3列。第一列和第二列将具有标签,第三列将输入字段。标签内容将基于语言动态。
我想要做的是,当第0列和第1列中的标签在加载控件时动态获取其内容时,让第2列中的输入字段尽可能宽。
我已经设定:
1)第2列的最小宽度,以确保如果第0列和第1列中的标签太宽,则输入字段不会完全隐藏。
2)将第2列设置为Width =“*”,让我的输入字段在设置标签时使用所有可用宽度。
3)第0列和第1列宽度=“自动”让它们根据需要增长以容纳标签。
现在我遇到了这个问题 - 如果列0或1的文本太长,整个网格开始扩展超出其容器的最大大小,第三列被切断。有没有办法阻止它,而不在列0和1上设置MaxWidth?
答案 0 :(得分:1)
您可以将MaxWidth
设置为绑定到父项:
<Grid MaxWidth="{Binding ActualWidth, ElementName=NameOfYourParentElement}" ... />
答案 1 :(得分:0)
不,不是真的。
如果您不希望标签被切断并且您不希望网格扩展通过其父级,则您只有两个选项是在列0和1上设置最大宽度或设置最大宽度为第0列和第1列中的标签,并设置要包装的标签中的文本。否则,某些东西会被裁剪或重叠。