【发布时间】:2011-04-06 07:14:16
【问题描述】:
我想要一个简单的 3 列网格,列可调整大小,MinWidth 为 80。
代码如下所示:
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="120" MinWidth="80"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*" MinWidth="80"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="120" MinWidth="80"/>
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1" Width="5" HorizontalAlignment="Center" />
<GridSplitter Grid.Column="3" Width="5" HorizontalAlignment="Center" />
</Grid>
但它并没有按照我想要和预期的方式工作。当分离器被推到左边时,一切正常。当第二个分离器被推到右边时,一切正常。但是如果将第一个拆分器推到右侧,它会将第 3 列和第二个拆分器推出网格(或使其宽度=0)。
我为网格分割器使用了单独的列,就像在 msdn 示例中所做的那样:
<Grid.ColumnDefinitions>
<ColumnDefinition/>
<ColumnDefinition Width="Auto" />
<ColumnDefinition/>
</Grid.ColumnDefinitions>
...
<GridSplitter Grid.Column="1"
HorizontalAlignment="Center"
VerticalAlignment="Stretch"
Background="Black"
ShowsPreview="True"
Width="5"
/>
当我在某处阅读时,我还将对齐设置为中心,右对齐可能是一个问题 并尝试了不同的 ResizeBehaviors。
有谁知道,如何解决这个问题,以便 3 列始终可见,宽度至少为 80 像素?
感谢您的帮助
【问题讨论】:
标签: wpf grid gridsplitter