我需要创建一个带有语义缩放的 xaml 页面,其中放大的视图包含 GridViews 和 ListViews。我从基本的网格应用程序模板开始。
为了尝试实现这一点,我让 Semantic Zoom 控件的放大视图显示了一个列表视图,并且列表视图包含我需要将数据实际显示为 ListViewItems 的 ListView 和 GridView 控件。这在一定程度上可行 - 问题是鼠标按下或点击动画发生在父 ListView 的整个子控件而不是子元素上。如果我不需要支持语义缩放,这种布局会很简单。
所以,我的问题是这是实现这种布局的最佳方式,还是我错过了什么。如果这是最好的方法,是否可以控制行为以使子项元素对选择具有正确的动画效果?
附加信息
GridView 或 ListView 的选择基于集合中项目的类型。在这个例子中,grp 1、3 和 4(显示在网格中)都是 typeNewsFull
的集合,其余的(显示在 Lists 中)是 type HeadlineOnly
,这两种类型都继承自 NewsBase。
页面布局(放大)应该是这样的......
Title
grp 1 grp 2 grp 3 grp 4 grp 5
[g][g][g][g] [_list item_] [g][g][g][g][g] [g][g][g] [_list_item_]
[g][g][g][g] [_list item_] [g][g][g][g][g] [g][g][g] [_list_item_]
[g][g][g][g] [_list item_] [g][g][g][g] [g][g] [_list_item_]
[g][g][g] [_list item_] [g][g][g][g] [g][g]
其中[g]
是网格视图项,[_list_item_] 是列表视图项。
缩小的视图是这样的...
Title
grp 1 grp 2 grp 3 grp 4 grp 5
[summary] [summary] [summary] [summary] [summary]