ham*_*mcn 9 .net wpf listview header gridviewcolumn
我是WPF开发的新手,我有一个ListView,我想冻结标题行,以便在用户滚动列表时不会滚动屏幕.我继承的xaml代码看起来像这样:
<ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
<DockPanel>
<forms:BindableGrid DockPanel.Dock="Top" [code snipped] >
<ListView.View>
<GridView>
<GridViewColumn Header="ColA" DisplayMemberBinding="{Binding ColA}" />
<GridViewColumn Header="ColB" DisplayMemberBinding="{Binding ColB}" />
[etc]
Run Code Online (Sandbox Code Playgroud)
Rob*_*nee 14
在ListView已经这样做了-它有一个内部的ScrollViewer,只有滚动的物品,而不是头.
问题是你的外部ScrollViewer告诉它的孩子(DockPanel它)有无限的可用空间,并DockPanel告诉它的孩子,所以你ListView最终占用了所需的空间,以显示所有项目而内部ScrollViewer没有出现.
如果你拿走你的外表ScrollViewer,ListView应该拿起它有限的空间,内部ScrollViewer会出现.
这显然会影响你的其他东西DockPanel,所以我会看到会发生什么并从那里开始.