我在 ItemsControl 中有一组项目。我正在显示所有这些,但我只想让项目的一个子集可见。所以我有点想指定 ItemsControl 的可见区域(或任何其他支持此的元素)。应用滚动后可以看到其他元素。
我可以在 ViewModel 端执行此操作并仅将可见元素传递给 ItemsControl,但我对仅查看解决方案感兴趣。有没有?
我在 ItemsControl 中有一组项目。我正在显示所有这些,但我只想让项目的一个子集可见。所以我有点想指定 ItemsControl 的可见区域(或任何其他支持此的元素)。应用滚动后可以看到其他元素。
我可以在 ViewModel 端执行此操作并仅将可见元素传递给 ItemsControl,但我对仅查看解决方案感兴趣。有没有?
您可以ScrollViewer
在' 的样式中添加 a ,然后如果您的项目将溢出,则会出现 ScrollBarItemsControl
的宽度或高度。ItemsControl
<Style x:Key="ItemsControlStyle1" TargetType="{x:Type ItemsControl}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ItemsControl}">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="true">
<ScrollViewer VerticalScrollBarVisibility="Auto">
<ItemsPresenter SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</ScrollViewer>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>