我试图让我的组合框拉伸使用所有的空余空间中展开的窗口。如果窗口的宽度缩小,ToolBarTray将会崩溃。C#WPF调整大小控件在网格行填满所有宽度
我使用的网格指定为分别* & 300 2列与宽度。 如何制作组合框来填充行中的所有可用空间?
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="50" />
</Grid.RowDefinitions>
<DockPanel LastChildFill="True" Grid.Row="0">
<Grid DockPanel.Dock="Top">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="300" />
</Grid.ColumnDefinitions>
<ToolBarTray DockPanel.Dock="Left">
<ToolBar Name="Standard">
<Button Height="32">
<StackPanel Orientation="Horizontal" Margin="5,0,5,0" HorizontalAlignment="Right">
<Image Height="24" Width="24" HorizontalAlignment="Center" Source="Images/document.png" />
</StackPanel>
</Button>
<Button Height="32">
<StackPanel Orientation="Horizontal" Margin="5,0,5,0" HorizontalAlignment="Right">
<Image Height="24" Width="24" HorizontalAlignment="Center" Source="Images/document.png" />
</StackPanel>
</Button>
<Button Height="32">
<StackPanel Orientation="Horizontal" Margin="5,0,5,0" HorizontalAlignment="Right">
<Image Height="24" Width="24" HorizontalAlignment="Center" Source="Images/document.png" />
</StackPanel>
</Button>
</ToolBar>
<ToolBar Name="Standard2">
<Button Height="32">
<StackPanel Orientation="Horizontal" Margin="5,0,5,0" HorizontalAlignment="Right">
<Image Height="24" Width="24" HorizontalAlignment="Center" Source="Images/document.png" />
</StackPanel>
</Button>
<Button Height="32">
<StackPanel Orientation="Horizontal" Margin="5,0,5,0" HorizontalAlignment="Right">
<Image Height="24" Width="24" HorizontalAlignment="Center" Source="Images/document.png" />
</StackPanel>
</Button>
<Button Height="32">
<StackPanel Orientation="Horizontal" Margin="5,0,5,0" HorizontalAlignment="Right">
<Image Height="24" Width="24" HorizontalAlignment="Center" Source="Images/document.png" />
</StackPanel>
</Button>
</ToolBar>
</ToolBarTray>
<ComboBox Grid.Column="1" MinWidth="200" ></ComboBox>
</Grid>
</DockPanel>
</Grid>
使用'WIDTH =“Auto'防止ToolBarTray从正确折叠。 最终,我所做的就是指定'WIDTH = “*” MaxWidth = “400”'和'WIDTH = “*” MinWidth = “500”'关于相应列。 它是一种解决方法,我必须找到ToolBarTray的绝对宽度,例如400并设置为MaxWidth。自从向ToolBarTray添加新项目以来,不是最好的方式意味着再次找到绝对宽度。希望有更好的解决方案。 –
我试了一下你的代码,我的解决方案,它似乎很好。我可以调整工具栏大小,右边没有额外的空间。什么是崩溃的问题?这里是我的解决方案http://1drv.ms/1LInfDa比较 –
[链接](https://onedrive.live.com/redir?resid=2BD0338CF8FC5F36!42820&authkey=!ACAUjgfs1ZBLmrs&ithint = file%2czip) 这是我的示例解决方案。随着窗口宽度的减小,ComboBox会推动ToolBarTray,折叠按钮。 –