我有一个 UWP,我从 XML 文件加载并在 GridView 中显示它,我试图以一种允许我在所有可用空间中堆叠和包装项目的方式启用滚动条,如下图所示。我遇到的问题是我无法弄清楚如何启用滚动条,以便我可以滚动框直到到达列表的末尾。
到目前为止,我已经完成了您在图片中看到的操作,它以我想要的方式包装,但它填充了所有可用空间,并且不允许您垂直或水平滚动(我只想以一种方式滚动,但我试图看看我是否可以走任何一条路)。通过大量的反复试验,我能够让它一次滚动一行或一列到列表的末尾,但这也不是想要的结果。这是我现在使用 XAML 的地方(屏幕截图的精简版)。
<GridView x:Name="DataGrid1">
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<ItemsWrapGrid Orientation="Horizontal"
ScrollViewer.HorizontalScrollBarVisibility="Visible"
ScrollViewer.VerticalScrollBarVisibility="Disabled" />
</ItemsPanelTemplate>
</GridView.ItemsPanel>
<GridView.ItemTemplate>
<DataTemplate>
<Border Width="270"
Height="200"
Margin="5"
BorderBrush="Black"
BorderThickness="2">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="70" />
<ColumnDefinition Width="100*" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<StackPanel Grid.Row="0"
Grid.Column="0"
Grid.ColumnSpan="2"
Background="#87CEFA">
<TextBlock Margin="2"
HorizontalAlignment="Center"
FontSize="16"
FontWeight="Bold"
Text="{Binding Company}" />
</StackPanel>
<TextBlock Grid.Row="1"
Grid.Column="0"
Margin="2"
HorizontalAlignment="Right"
FontWeight="Bold"
Text="Code: " />
<TextBlock Grid.Row="1"
Grid.Column="1"
Margin="2"
Text="{Binding Code}" />
</Grid>
</Border>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
Run Code Online (Sandbox Code Playgroud)
那么我需要做什么才能按照我想要的方式启用滚动条?
确保您的 GridView 位于 Grid 而不是 StackPanel 中。它不会在 StackPanel 中展开。要使其在 StackPanel 中滚动,您必须指定 GridView 的高度。这是我的问题:)
| 归档时间: |
|
| 查看次数: |
5242 次 |
| 最近记录: |