我试图在水平滚动查看器中设置多个项目(在本例中为测试按钮),因此您可以向左和向右滚动。 不知何故,这是不起作用,收集整个控件,包含ScrollViewer自我调整大小(所以它适合所有项目)或项目不能滚动,所以浮动,而不是在边界切割。以图为例:
在图片中,Scrollview通常会在它顶部的行尾结束...
代码如下:
<ScrollViewer x:Name="scroller" Grid.Column="1" CanContentScroll="True" HorizontalScrollBarVisibility="Auto" Margin="5" Foreground="{x:Null}">
<ItemsControl Margin="5,0">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<Button Width="180" Height="80" Margin="5,0"/>
<Button Width="180" Height="80" Margin="5,0"/>
...
</ItemsControl>
</ScrollViewer>
感谢您的帮助!
答案 0 :(得分:0)
如果您希望确保ScrollViewer保持恒定大小,请将其设置为Width和MaxWidth,使其保持不变。它也可能有助于将水平对齐更改为居中。
例如
<ScrollViewer x:Name="scroller" Grid.Column="1" CanContentScroll="True" HorizontalScrollBarVisibility="Auto" Margin="5" Width="100" MaxWidth="100" HorizontalAlignment="Center" Foreground="{x:Null}">