GridSplitter 接下来调整大小
GridSplitter resize next
我似乎无法使用 GridSplitter
来调整 下一个 项目的大小。这里是 xaml:
<Grid>
<!-- this works -->
<Grid Background="Gray" HorizontalAlignment="Left">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="auto" />
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1" Width="10" ResizeBehavior="PreviousAndNext" />
</Grid>
<!-- this doesn't -->
<Grid Background="Gray" HorizontalAlignment="Right">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="100" />
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1" Width="10" ResizeBehavior="PreviousAndNext" />
</Grid>
</Grid>
和演示:
请注意,左侧 Grid
可以调整大小,而右侧则存在一些问题。您可以自己尝试 given xaml 看看我的意思。
我应该怎么做才能使 下一个 项目大小调整正常工作?
我通过更改 ColumnDefinition Width 使其工作
<Grid>
<Grid Background="Gray" HorizontalAlignment="Left">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1" Width="10" ResizeBehavior="PreviousAndNext" />
</Grid>
<Grid Background="Gray" HorizontalAlignment="Right">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="100" />
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1" Width="10" ResizeBehavior="PreviousAndNext" />
</Grid>
</Grid>
还有一个我更喜欢的变体:
<Grid>
<Grid Background="Gray">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="100" />
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1" Width="10" ResizeBehavior="PreviousAndNext" />
<Border Grid.Column="2" Background="Gold"/>
<GridSplitter Grid.Column="3" Width="10" ResizeBehavior="PreviousAndNext" />
</Grid>
</Grid>
我似乎无法使用 GridSplitter
来调整 下一个 项目的大小。这里是 xaml:
<Grid>
<!-- this works -->
<Grid Background="Gray" HorizontalAlignment="Left">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="auto" />
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1" Width="10" ResizeBehavior="PreviousAndNext" />
</Grid>
<!-- this doesn't -->
<Grid Background="Gray" HorizontalAlignment="Right">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="100" />
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1" Width="10" ResizeBehavior="PreviousAndNext" />
</Grid>
</Grid>
和演示:
请注意,左侧 Grid
可以调整大小,而右侧则存在一些问题。您可以自己尝试 given xaml 看看我的意思。
我应该怎么做才能使 下一个 项目大小调整正常工作?
我通过更改 ColumnDefinition Width 使其工作
<Grid>
<Grid Background="Gray" HorizontalAlignment="Left">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1" Width="10" ResizeBehavior="PreviousAndNext" />
</Grid>
<Grid Background="Gray" HorizontalAlignment="Right">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="100" />
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1" Width="10" ResizeBehavior="PreviousAndNext" />
</Grid>
</Grid>
还有一个我更喜欢的变体:
<Grid>
<Grid Background="Gray">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="*" />
<ColumnDefinition Width="auto" />
<ColumnDefinition Width="100" />
</Grid.ColumnDefinitions>
<GridSplitter Grid.Column="1" Width="10" ResizeBehavior="PreviousAndNext" />
<Border Grid.Column="2" Background="Gold"/>
<GridSplitter Grid.Column="3" Width="10" ResizeBehavior="PreviousAndNext" />
</Grid>
</Grid>