【发布时间】:2014-11-30 12:00:49
【问题描述】:
我有一个 GridView,其中包含包含子项的组,并希望在添加子项时添加一个过渡。
GridView 现在看起来像这样:
我的项目面板:
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<ItemsWrapGrid GroupPadding="0,0,70,0">
<ItemsWrapGrid.ChildrenTransitions>
<TransitionCollection>
<EntranceThemeTransition />
</TransitionCollection>
</ItemsWrapGrid.ChildrenTransitions>
</ItemsWrapGrid>
</ItemsPanelTemplate>
</GridView.ItemsPanel>
DataSource 已启用 IsSourceGrouped。
但我无法让项目过渡,它们只是立即弹出。
我已经尝试添加 ItemsWrapGrid.Transitions,但是只有组标题被动画化,而不是项目本身。 我也尝试向 GridView 本身添加过渡,但仍然没有项目过渡。
如何在 GridView 中为组的子级启用过渡?
我不确定这是否相关,但无论如何我都会提到: Items 从 Internet 加载并添加到 GridView 的 ItemsSource(一个 ObservableCollection)中。
一些项目一起加载,同时添加:
有些项目是这样加载的:
- 创建了一个组对象并将其添加到 ItemsSource
- 一项从 Internet 加载
- 项目正在作为子项添加到组对象中(它会立即在 GridView 中弹出)
- 从 2 开始重复,直到所有项目都加载完毕
其他一些项目:
- 创建了一个组对象并将其添加到 ItemsSource
- 从 Internet 加载多个项目
- 项目作为子项一次性添加到组中(全部立即在 GridView 中弹出)
我没有像在 Visual Studio 网格模板中那样使用 ViewModel 方法,而是手动设置了 ItemsSource。
【问题讨论】:
标签: c# xaml windows-runtime winrt-xaml