コード例 #1
0
        private void grvCurated_ItemClick(object sender, ItemClickEventArgs e)
        {
            CollectionRootObject itemaaa = (CollectionRootObject)e.ClickedItem;

            Frame.Navigate(typeof(ViewCollectionsPage), itemaaa);
        }
コード例 #2
0
        protected async override void OnNavigatedTo(NavigationEventArgs e)
        {
            //grvCol.Visibility = Visibility.Collapsed;
            //griLoading.Visibility = Visibility.Visible;
            publicAuthorization = new PublicAuthorization();

            itemaaa = (CollectionRootObject)e.Parameter;
            page    = 1;
            temp    = itemaaa.total_photos;

            if (temp <= 30)
            {
                gridnextback.Visibility = Visibility.Collapsed;
            }
            else
            {
                gridnextback.Visibility = Visibility.Visible;
            }


            double totalWidth = 0;
            int    start      = 0;
            await Task.Delay(100);

            if (itemaaa.curated == false)
            {
                ViewModel.RequestParameters.feCollectionIDUri = RequestParameters.feCollectionIDUri + itemaaa.id + "/photos?client_id=" + RequestParameters.client_id + "&page=1&per_page=30";
                this.CollectionView = new aCollectionViewModel();
                try
                {
                    aCollection = await publicAuthorization.GetaCollectionaaa();
                }
                catch (Exception ex)
                {
                    Noreult.Visibility   = Visibility.Visible;
                    Truereult.Visibility = Visibility.Collapsed;
                }


                while (grvCol.ActualWidth == 0)
                {
                    await Task.Delay(10);
                }

                for (int i = 0; i < CollectionView.aCollectionPhoto.Count; i++)
                {
                    var width = CollectionView.aCollectionPhoto[i].width * 310 / CollectionView.aCollectionPhoto[i].height;
                    totalWidth += width;

                    if (totalWidth > grvCol.ActualWidth)
                    {
                        for (int j = start; j < i; j++)
                        {
                            CollectionView.aCollectionPhoto[j].Scale = grvCol.ActualWidth / (totalWidth - width);
                        }
                        start      = i;
                        totalWidth = width;
                    }
                }

                for (int j = start; j < CollectionView.aCollectionPhoto.Count; j++)
                {
                    CollectionView.aCollectionPhoto[j].Scale = grvCol.ActualWidth / (totalWidth);
                }

                grvCol.ItemsSource = CollectionView.aCollectionPhoto;
                ViewModel.RequestParameters.feCollectionIDUri = "https://api.unsplash.com/collections/";/* + itemaaa.id + "/photos?client_id=" + RequestParameters.client_id + "&page=1&per_page=30";*/
            }
            else
            {
                this.CollectionView = new aCollectionViewModel();
                try
                {
                    RequestParameters.curCollectionIDUri = RequestParameters.curCollectionIDUri + itemaaa.id + "/photos?client_id=" + RequestParameters.client_id + "&page=1&per_page=10";
                    aaCollection = await publicAuthorization.GetaCollectionaaaa();
                }
                catch (Exception ex)
                {
                    MessageDialog ms = new MessageDialog("Error: " + ex);
                    ms.ShowAsync();
                }


                while (aaCollection.Count == 0)
                {
                    await Task.Delay(10);
                }

                while (grvCol.ActualWidth == 0)
                {
                    await Task.Delay(10);
                }

                for (int i = 0; i < CollectionView.aaCollectionPhoto.Count; i++)
                {
                    var width = CollectionView.aaCollectionPhoto[i].width * 310 / CollectionView.aaCollectionPhoto[i].height;
                    totalWidth += width;

                    if (totalWidth > grvCol.ActualWidth)
                    {
                        for (int j = start; j < i; j++)
                        {
                            CollectionView.aaCollectionPhoto[j].Scale = grvCol.ActualWidth / (totalWidth - width);
                        }
                        start      = i;
                        totalWidth = width;
                    }
                }

                for (int j = start; j < CollectionView.aaCollectionPhoto.Count; j++)
                {
                    CollectionView.aaCollectionPhoto[j].Scale = grvCol.ActualWidth / (totalWidth);
                }

                grvCol.ItemsSource = CollectionView.aaCollectionPhoto;
                ViewModel.RequestParameters.curCollectionIDUri = "https://api.unsplash.com/collections/curated/";/* + itemaaa.id + "/photos?client_id=" + RequestParameters.client_id + "&page=1&per_page=30";*/
            }

            tbNameCollection.Text = itemaaa.title;
            //griLoading.Visibility = Visibility.Collapsed;
            //grvCol.Visibility = Visibility.Visible;
        }