0
我有一个工具栏,当窗口调整大小时,我想让它的项目堆叠在彼此的顶部(就像它在引导程序网格内,如果它是HTML)...在调整大小时制作动态工具栏XAML
<Grid VerticalAlignment="Top" x:Name="TopBar" Margin="0,0,0.35,0" Opacity="0.8">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="auto" />
</Grid.ColumnDefinitions>
<textbox Grid.Column="0" content="text"/>
<ToolBarPanel HorizontalAlignment="Right" VerticalAlignment="Center" Orientation="Horizontal" Grid.Column="1">
<WrapPanel Orientation="Horizontal" Width="500">
<Button content="toolbar_item"></Button>
<Button content="toolbar_item"></Button>
<Button content="toolbar_item"></Button>
<Button content="toolbar_item"></Button>
<Button content="toolbar_item"></Button>
<Button content="toolbar_item"></Button>
</WrapPanel>
</ToolBarPanel>
</Grid>
但是,在这个设置下,按钮在加载时堆叠,但它们不是动态的,当窗口变小时它们不会继续堆叠,它们只会溢出。有没有办法做到这一点?
使用Viewbox在调整大小时使按钮更小/更大,但它并没有真正地将它们堆叠在彼此之上。我想保持按钮的大小相同,只是在调整大小时使列宽变小,允许按钮垂直溢出并堆叠,如果这样做合理的话。我已经更新了包含我设置的网格列的代码,不知道它是否有所作为。 – Whirlwind991
我不认为这是可能的。由于工具栏的方向是水平的,因此不能指望以相反方向自动调整大小和堆叠。 如果非常需要,我认为您可能需要编写逻辑,即在调整大小超出特定限制时,将方向更改为垂直并手动堆叠它们。 – ViVi
是的,我必须做一些工作。无论如何,感谢您的帮助! – Whirlwind991