.net WPF:如何冻结ListView标题行以使其赢得';不要在屏幕上滚动
我是WPF开发的新手,我有一个ListView,我想冻结标题行,这样当用户滚动列表时它就不会从屏幕上滚下来。 我继承的xaml代码如下所示:.net WPF:如何冻结ListView标题行以使其赢得';不要在屏幕上滚动,.net,wpf,listview,header,gridviewcolumn,.net,Wpf,Listview,Header,Gridviewcolumn,我是WPF开发的新手,我有一个ListView,我想冻结标题行,这样当用户滚动列表时它就不会从屏幕上滚下来。 我继承的xaml代码如下所示: <ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto"> <DockPanel> <forms:BindableGrid DockPanel.Dock="Top" [code snipped] >
<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]
[等]
列表视图已经做到了这一点-它有一个内部的ScrollViewer
,只滚动项目而不滚动标题
问题是您的外部ScrollViewer
告诉它的子对象(DockPanel
)它有无限的可用空间,DockPanel
告诉它的子对象,因此,您的列表视图
最终会占用显示所有项目所需的空间,而内部滚动查看器
不会显示
如果拿走外部的ScrollViewer
,则ListView
会发现它的空间有限,并且会出现内部的ScrollViewer
这显然会影响您的DockPanel
中的其他内容,因此我会看看会发生什么,然后再做下去。。只是我需要的提示,以我想要的方式获取ListView显示。在这种情况下,您不需要scrollviewer。。。