您好我有一个绑定到集合的ListView。我将ListView的高度设置为auto,以便占用该区域中的所有空间。但是,在将高度设置为auto后,没有滚动条。如果我给它一个高度,那么滚动条就会显示出来。
标记非常类似于以下
<Grid>
<StackPanel>
<Expander>
<DataGrid>
<Expander>
<ListView>
答案 0 :(得分:50)
我预感到您的ListView
位于面板内部,允许它无限制地垂直展开。
例如,如果您在ListView
内加StackPanel
,则ListView
的身高可能会超过StackPanel
的身高。 ListView
已增加其高度以显示其所有项目,就其而言,因此没有滚动条。
但是,如果您将StackPanel
更改为Grid
,其中控件会自动尝试让自己适合该区域,ListView
会在包含更多项目时自动拥有滚动条它可以显示。
这可能最简单地通过调整包含ListView
。
答案 1 :(得分:8)
而不是设置
<RowDefinition Height="auto"/>
设置:
<RowDefinition Height="1*"/>
答案 2 :(得分:4)
如果没有要滚动的内容,为什么要显示滚动条?
如果要覆盖任何默认行为,可以在ListBox上设置ScrollViewer.VerticalScrollBarVisibility="Visible"
。