簡體   English   中英

WPF StackPanel - 如何將物品從底部推出

[英]WPF StackPanel - how to push items off bottom

我有一個 StackPanel 在網格中垂直跨越整個屏幕,並且面板的 VerticalAlignment 選項設置為底部。 當我在代碼中將項目添加到面板時,它們的位置從底部開始,當我添加更多時它們會向上移動。 這是所希望的。 然而,不希望的是,在屏幕垂直填充項目后,添加更多項目會將它們推離屏幕頂部。 我的願望是讓額外的物品從底部掉下來; 我不在乎它們是否不可見; 我只是不希望最上面的項目消失。

您可能知道什么技巧可以幫助我解決這個問題? 先感謝您。

我的願望是讓額外的物品從底部掉下來

您需要將StackPanel包裝在另一個容器中,以使StackPanel本身可以隨心所欲地增長,以使StackPanel看起來從底部擴展,但實際上是從頂部擴展,這樣當它超過可用空間時,多余的部分從底部而不是頂部移除。

Grid控件正是這樣做的。 例如:

<Window x:Class="TestSO67169225StackPanelFromBottom.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        mc:Ignorable="d"
        Title="MainWindow" Height="450" Width="800">
  <Window.Resources>
    <Style TargetType="TextBlock">
      <Setter Property="FontSize" Value="36"/>
    </Style>
  </Window.Resources>
  
  <Grid VerticalAlignment="Bottom">
    <StackPanel>
      <TextBlock Text="StackPanel Item 1"/>
      <TextBlock Text="StackPanel Item 2"/>
      <TextBlock Text="StackPanel Item 3"/>
      <TextBlock Text="StackPanel Item 4"/>
      <TextBlock Text="StackPanel Item 5"/>
      <TextBlock Text="StackPanel Item 6"/>
    </StackPanel>
  </Grid>
</Window>

看起來像這樣:

未滿 StackPanel 從底部增長

但是當您添加更多項目時,看起來像這樣:

StackPanel 溢出的項目從底部溢出

暫無
暫無

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

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