gpt4 book ai didi

c# - WPF - 网格中的扩展器 - 吃空间

转载 作者:太空狗 更新时间:2023-10-30 00:19:30 24 4
gpt4 key购买 nike

我有非常简单的 xaml。

<Grid Margin="0,50,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="30*" />
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<!--<RowDefinition Height="50"/>-->
</Grid.RowDefinitions>
<Expander Header=""
HorizontalAlignment="Left"
VerticalAlignment="Stretch"
ExpandDirection="Right"
IsExpanded="True"
Grid.Column="0"
Grid.Row="0"
Height="Auto"
>
<!-- My List control -->
</Expander>
<TabControl Name="ExecutionTab" Grid.Column="1" Grid.Row="0" HorizontalAlignment="Stretch">
<!-- soem tabs here -->
</TabControl>
</Grid>

现在,折叠扩展器后,左侧部分 [row=0,col=0] 显示为带有空格的空白。我们想要的是右边的部分 [row=0,col=1] 应该占据整个空间。

遇到这种情况应该怎么办?我已尝试将 Horizo​​ntalAlignment="Stretch"设置为 Tab 控件,但无法正常工作。

我是否需要添加事件处理程序,例如折叠和更改网格宽度...但这似乎不是个好方法?

谁能提出更好的方法?

谢谢

最佳答案

使用网格并不是实现您想要的目标的最佳方式。您应该使用 DockPanel 而不是 LastChildFill = "true"。我现在不能尝试,但我会这样想:

<DockPanel LastChildFill="true">
<Expander Header=""
HorizontalAlignment="Left"
VerticalAlignment="Stretch"
ExpandDirection="Right"
IsExpanded="True"
DockPanel.Dock="Left"
Height="Auto"
>
<!-- My List control -->
</Expander>
<TabControl Name="ExecutionTab" HorizontalAlignment="Stretch">
<!-- soem tabs here -->
</TabControl>
</DockPanel>

这应该使选项卡控件始终占用整个剩余空间。

关于c# - WPF - 网格中的扩展器 - 吃空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19723577/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com