SemanticZoom中的UWP ScrollIntoView

时间:2017-10-16 14:24:42

标签: uwp

是否可以滚动到SemanticZoom中的视图? SemanticZoom没有ScrollIntoView方法(与ListView相反)。因此,当放大SemanticView时,我无法缩放到组元素。我尝试通过恢复ScrollViewer来做到这一点:

var root = VisualTreeHelper.GetChild(semanticView, 0);
var scrollviewer = VisualTreeHelper.GetChild(root, 0) as ScrollViewer;

...但我无法获得目标元素的UIElement。

2 个答案:

答案 0 :(得分:1)

要同步ZoomedInViewZoomedOutView,您可以使用以下代码

private void SemanticZoom_ViewChangeStarted(object sender, SemanticZoomViewChangedEventArgs e)
{
    if (e.IsSourceZoomedInView == false)
    {
        e.DestinationItem.Item = e.SourceItem.Item;
    }
}

如果您想要滚动其他时间,请使用以下代码

var zoomLoc = new SemanticZoomLocation() { Item = /* Item to navigate */};
mySemanticZoom.ZoomedInView.MakeVisible(zoomLoc);

答案 1 :(得分:0)

我终于成功恢复了ZoomedInView中包含的gridview。实际上,我在这个GridView中使用了CollectionViewSource。碰巧也可以滚动到一个组,而不仅仅是一个我不知道的项目。