我有一个HGroup,里面有7个子组。前6个子组中的每一个都将宽度/高度设置为特定值。我希望第7个元素填充HGroup的剩余宽度,所以我给它的值为100%。这只适用于应用启动时。在有问题的HGroup初始设置它的宽度后,它将不会调整大小。如果我从中侦听ResizeEvent并追踪宽度,当它大于原始宽度时,它将追踪宽度并且它确实上升(尽管内容没有调整大小),但是当我调整到下面时原始宽度,ResizeEvent停止射击。
HGroup的每个父级也将其宽度设置为100%。没有明确设置为数字。我觉得我有其他组件可以做到这一点。
我通过将最后一个元素从组中取出然后将其设置为右,顶部,底部并将其左侧绑定到HGroup的x plus width属性中的最后一个元素来“入侵”它。这有效......但我觉得我不应该这样做。
<WindowedApplication>
<Group width="100%">
<Group width="100%">
<Group width="100%">
<Group width="200" />
<VGroup width="100%">
<Group width="100%">
<HGroup width="100%">
<Button width="60" />
<Button width="60" />
<Button width="60" />
<Button width="60" />
<Button width="60" />
<ButtonWithProblem width="100%" />
</HGroup>
</Group>
<Group width="100%" />
</VGroup>
<VGroup width="270" />
</Group>
</Group>
</Group>
</WindowedApplication>
问题在于ButtonWithProblem,当应用程序加载时它的宽度被设置,并且在该点设置的宽度似乎是它的新的最小宽度,如果我调整屏幕尺寸,它只是开始缩放而不是收缩。如果我将应用程序调整得更大,那么它也不会拉伸以填充HGroup大小。
所以我通过将ButtonWithProblem从HGroup中取出并将其作为HGroup的兄弟并将其设置为顶部,右侧和底部为5然后将左侧属性绑定到HGroup的宽度(其工作,只是看似hackish)