代码之家  ›  专栏  ›  技术社区  ›  levanovd

水平列表框项目垂直布局

  •  5
  • levanovd  · 技术社区  · 16 年前

    我有水平列表框。这是它的代码(删除了一些不相关的代码):

                <ListBox Grid.Row="1"
                         ItemContainerStyle="{StaticResource ListBoxUnselectableItemStyle}"
                         ItemsSource="{Binding ...}"
                         BorderThickness="0"
                         Background="{x:Null}"
                         ScrollViewer.CanContentScroll="False">
    
                    <ListBox.ItemsPanel>
                            <ItemsPanelTemplate>
                                <StackPanel Orientation="Horizontal"
                                            VerticalAlignment="Top"
                                            HorizontalAlignment="Center"
                                            Background="Red"/>
                            </ItemsPanelTemplate>
                    </ListBox.ItemsPanel>
                </ListBox>
    




    我得到项目的布局行为如下: http://www.freeimagehosting.net/uploads/cf4f839d02.png ]

    正如你所看到的,第二个项目更小,而Verticallayout并不是我想要的顶级项目。

    有人能帮我吗?

    1 回复  |  直到 14 年前
        1
  •  5
  •   itowlson    16 年前

    水平和垂直对齐是指堆叠面板在其父容器中的对齐方式。

    您可能需要查看itemcontainerStyle,其中将verticalAlignment设置为Stretch(以便ListBoxItem占据ListBox的整个高度),并将verticalContentAlignment设置为Top(以便ListBoxItem的内容与ListBoxItem的顶部对齐)。

    推荐文章