簡體   English   中英

垂直GridSplitter不可調整大小

[英]Vertical GridSplitter not resizable

我試圖做一個GridSplitter可以調整網格中的行的大小。 網格由三行組成,每行都有一個StackPanel,其中包含兩個標簽(名稱,姓氏,年齡):

<Grid Background="LightGray">
    <Grid.ColumnDefinitions>
        <ColumnDefinition />
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition />
        <RowDefinition />
        <RowDefinition />
    </Grid.RowDefinitions>
    <GridSplitter Grid.Row="0" Grid.Column="0" Height="5" 
                  VerticalAlignment="Center"
                  HorizontalAlignment="Stretch" ResizeDirection="Rows"/>
    <StackPanel Orientation="Horizontal" Grid.Row="0">
        <Label FontSize="25" Margin="10">Name</Label>
        <Label x:Name="nameLabel" FontSize="25" Margin="10"></Label>
    </StackPanel>
    <StackPanel Orientation="Horizontal" Grid.Row="1">
        <Label FontSize="25" Margin="10">Surname</Label>
        <Label x:Name="surnameLabel" FontSize="25" Margin="10"></Label>
    </StackPanel>
    <StackPanel Orientation="Horizontal" Grid.Row="2">
        <Label FontSize="25" Margin="10">Age</Label>
        <Label x:Name="ageLabel" FontSize="25" Margin="10"></Label>
    </StackPanel>
</Grid>

使用此代碼,第一行不可調整大小。 我看到了GridSplitter,當我將鼠標移到它上面時,我也看到了箭頭,但是如果拖動它,則行的大小不會調整。

在此處輸入圖片說明

我通常將GridSplitter放在自己的GridRow 這將給您所需的效果:

<Grid Background="LightGray">
    <Grid.ColumnDefinitions>
        <ColumnDefinition />
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition />
        <RowDefinition Height="Auto" />
        <RowDefinition />
        <RowDefinition />
    </Grid.RowDefinitions>
    <StackPanel Orientation="Horizontal" Grid.Row="0">
        <Label FontSize="25" Margin="10">Name</Label>
        <Label x:Name="nameLabel" FontSize="25" Margin="10"></Label>
    </StackPanel>
    <GridSplitter Grid.Row="1" Grid.Column="0" Height="5"
                  HorizontalAlignment="Stretch" />
    <StackPanel Orientation="Horizontal" Grid.Row="2">
        <Label FontSize="25" Margin="10">Surname</Label>
        <Label x:Name="surnameLabel" FontSize="25" Margin="10"></Label>
    </StackPanel>
    <StackPanel Orientation="Horizontal" Grid.Row="3">
        <Label FontSize="25" Margin="10">Age</Label>
        <Label x:Name="ageLabel" FontSize="25" Margin="10"></Label>
    </StackPanel>
</Grid>

嘗試將GridSplitterVerticalAlignment設置為"Bottom"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM