Example #1
0
        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);
            if (e.NavigationMode == NavigationMode.Back)
            {
                if (_persistedItemIndex >= 0)
                {
                    HomeFeedGrid.Loaded += async(a, s) =>
                    {
                        var item = HomeFeedGrid.Items[_persistedItemIndex];
                        if (item != null)
                        {
                            HomeFeedGrid.ScrollIntoView(item);
                            var connectedAnimation = ConnectedAnimationService
                                                     .GetForCurrentView()
                                                     .GetAnimation("podimageback");

                            if (connectedAnimation != null)
                            {
                                await HomeFeedGrid.TryStartConnectedAnimationAsync(
                                    connectedAnimation,
                                    item,
                                    "Image");
                            }
                        }
                    };
                }
            }
            else
            {
                _persistedItemIndex = -1;
            }

            ConfigureComposition();
        }
Example #2
0
        private void HomeFeedGrid_ItemClick(object sender, ItemClickEventArgs e)
        {
            var selectedFeed = e.ClickedItem as Feed;

            _persistedItemIndex = HomeFeedGrid.Items.IndexOf(e.ClickedItem);
            HomeFeedGrid.PrepareConnectedAnimation("PodcastImageBorder", e.ClickedItem, "Image");
            ViewModel.NavigateToFeed(selectedFeed);
        }