为什么我的GridSplitter不出现?

Mat*_*hew 4 .net c# wpf grid gridsplitter

我有一个简单的Window看起来像这样:

<Window x:Class="StackOverflowExample.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="3*" />
            <RowDefinition Height="2*" />
        </Grid.RowDefinitions>

        <Label Content="Foo" Margin="5" />
        <Label Grid.Row="1" Content="Bar" Margin="5" />
        <GridSplitter Grid.Row="1" Background="Black" VerticalAlignment="Top" Height="5" />
    </Grid>
</Window>

// The code-behind is empty, except for "InitializeComponent()".
Run Code Online (Sandbox Code Playgroud)

但是,当我运行应用程序时,没有GridSplitter可见的.GridSplitter在设计时我也看不到.

  • 我确保它GridSplitter在正确的行中,然后设置VerticalAlignmentTop
  • 我已经指定了一个明确的背景颜色,以确保GridSplitter不混入.
  • 我已经确定它GridSplitter是最后一个元素Grid,所以我不应该ZIndex遇到问题.
  • 为了以防万一,我已经为标签添加了边距,以确保它们不会遮挡网格(尽管这在这种情况下应该有所不同).

我究竟做错了什么?

Cod*_*ked 6

你需要设置HorizontalAlignment="Stretch":

<GridSplitter Grid.Row="1" Background="Black" VerticalAlignment="Top" HorizontalAlignment="Stretch" Height="5" />
Run Code Online (Sandbox Code Playgroud)