在WinRT XAML中的GridView组内的垂直滚动

在WinRT XAML中的GridView组内的垂直滚动,第1张

概述在WinRT XAML中的GridView组内的垂直滚动

我正在使用GrIDVIEw在WinRT XAML应用程序中显示不同组项目。 一切正常,除了ItemsPanelTemplate使用一个包裹网格,当它的空间不足时,我的物品垂直堆叠。

所以,我试图使用StackPanel,像这样:

<GroupStyle.Panel> <ItemsPanelTemplate> <StackPanel OrIEntation="Vertical" Visibility="Visible" /> </ItemsPanelTemplate> </GroupStyle.Panel>

这些项目是垂直堆叠,这是伟大的,但现在的问题是,我不能滚动他们,他们不适合在屏幕上。 所以我尝试启用垂直滚动:

<GroupStyle.Panel> <ItemsPanelTemplate> <StackPanel OrIEntation="Vertical" Visibility="Visible" ScrollVIEwer.VerticalScrollbarVisibility="Visible" ScrollVIEwer.VerticalScrollMode="Enabled"/> </ItemsPanelTemplate> </GroupStyle.Panel>

但是这不起作用。 任何build议如何完成GrIDVIEw组内的垂直滚动?

编辑1:

我也试过这个:

<GroupStyle.Panel> <ItemsPanelTemplate> <ScrollVIEwer VerticalScrollbarVisibility="Visible" HorizontalScrollMode="Disabled" ZoomMode="Disabled" VerticalScrollMode="Enabled"> <StackPanel OrIEntation="Vertical" Visibility="Visible" /> </ScrollVIEwer> </ItemsPanelTemplate> </GroupStyle.Panel>

这会打乱deBUGging器,因为ItemsPanelTemplate需要面板作为孩子。

好的,我终于解决了! 致相关人士:

<GroupStyle.ContainerStyle> <Style targettype="GroupItem"> <Setter Property="Template"> <Setter.Value> <ControlTemplate targettype="GroupItem"> <GrID> <GrID.RowDeFinitions> <RowDeFinition Height="auto"/> <RowDeFinition Height="*"/> </GrID.RowDeFinitions> <ContentPresenter Content="{TemplateBinding Content}" GrID.Row="0"/> <ItemsControl x:name="ItemsControl2" ItemsSource="{Binding GroupItems}" GrID.Row="1"> <ItemsControl.Template> <ControlTemplate> <ScrollVIEwer x:name="ScrollVIEwer" VerticalScrollbarVisibility="HIDden" VerticalScrollMode="Enabled" HorizontalScrollbarVisibility="Disabled" HorizontalScrollMode="Disabled"> <ItemsPresenter /> </ScrollVIEwer> </ControlTemplate> </ItemsControl.Template> </ItemsControl> </GrID> </ControlTemplate> </Setter.Value> </Setter> </Style> </GroupStyle.ContainerStyle>

使用网格来确保ScrollVIEwer正确缩放非常重要。

那这个呢?

它呈现这样的元素:


项目1项目2


项目3项目4

<ListVIEw WIDth="200"> <ListBoxItem> <TextBlock>Item 1</TextBlock> </ListBoxItem> <ListBoxItem> <TextBlock>Item 2</TextBlock> </ListBoxItem> <ListBoxItem> <TextBlock>Item 3</TextBlock> </ListBoxItem> <ListBoxItem> <TextBlock>Item 4</TextBlock> </ListBoxItem> <ListVIEw.ItemsPanel> <ItemsPanelTemplate> <WrapGrID OrIEntation="Horizontal"/> </ItemsPanelTemplate> </ListVIEw.ItemsPanel> </ListVIEw>

我会把你的元素直接放在滚动查看器中。 喜欢这个:

<GroupStyle.Panel> <ItemsPanelTemplate> <ScrollVIEwer VerticalScrollbarVisibility="Visible" HorizontalScrollMode="Disabled" ZoomMode="Disabled" VerticalScrollMode="Enabled"> <StackPanel OrIEntation="Vertical" Visibility="Visible" /> </ScrollVIEwer> </ItemsPanelTemplate>

兰斯,我希望这有助于

您可能还想要将ScrollVIEwer的缩放模式设置为禁用:)

问候

总结

以上是内存溢出为你收集整理的在WinRT XAML中的GridView组内的垂直滚动全部内容,希望文章能够帮你解决在WinRT XAML中的GridView组内的垂直滚动所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1157526.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存