我正在创建一个Windows 8.1应用程序,我有一个列表视图,其中每一行都可以超出屏幕限制。我希望允许使用在行宽时左右滚动,但在显式设置其属性时,我似乎无法让水平滚动查看器显示事件。
<ListView
ItemsSource="{Binding AllColors}"
ScrollViewer.HorizontalScrollBarVisibility="Visible"
ScrollViewer.HorizontalScrollMode="Enabled"
>
<ListView.ItemContainerStyle>
<Style TargetType="ListViewItem">
<Setter Property="Width" Value="3600"/>
<Setter Property="HorizontalAlignment" Value="Stretch"/>
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
</ListView.ItemContainerStyle>
<ListView.ItemTemplate>
<DataTemplate>
<Rectangle Height="100">
<Rectangle.Fill>
<LinearGradientBrush>
<GradientStop Offset="0" Color="Black"/>
<GradientStop Offset="0.5" Color="{Binding}"/>
<GradientStop Offset="1" Color="White"/>
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
出现水平滚动条,但它不允许滚动(好像不需要......),而它内部的项目比屏幕宽得多。
有办法吗?
答案 0 :(得分:0)
将这些设置为自动应该足够了
ScrollViewer.HorizontalScrollBarVisibility="Auto"
ScrollViewer.HorizontalScrollMode="Auto"
也许您的ListView
托管在横向StackPanel
或其他ScrollViewer
中?