コード例 #1
0
        protected async override void OnNavigatedTo(NavigationEventArgs e)
        {
            _navigationHelper.OnNavigatedTo(e);
            await FlickrModel.LoadItemsAsync();

            DataContext = this;
        }
コード例 #2
0
 private void OnDataRequested(DataTransferManager sender, DataRequestedEventArgs args)
 {
     if (FlickrModel != null)
     {
         FlickrModel.GetShareContent(args.Request);
     }
 }
コード例 #3
0
        protected async override void OnNavigatedTo(NavigationEventArgs e)
        {
            _dataTransferManager = DataTransferManager.GetForCurrentView();
            _dataTransferManager.DataRequested += OnDataRequested;

            _navigationHelper.OnNavigatedTo(e);

            if (FlickrModel != null)
            {
                await FlickrModel.LoadItemsAsync();

                FlickrModel.SelectItem(e.Parameter);

                FlickrModel.ViewType = ViewTypes.Detail;
            }
            DataContext = this;

            // Allow this page to rotate
            _currentOrientations = DisplayInformation.AutoRotationPreferences;
            DisplayInformation.AutoRotationPreferences = DisplayOrientations.Portrait
                                                         | DisplayOrientations.Landscape
                                                         | DisplayOrientations.LandscapeFlipped
                                                         | DisplayOrientations.PortraitFlipped;

            // Handle orientation changes
            DisplayInformation.GetForCurrentView().OrientationChanged += this.OnOrientationChanged;
            this.TransitionStoryboardState();
        }
コード例 #4
0
        public FlickrViewModel()
        {
            _flickrModel = new FlickrModel();
            IList <string> list = _flickrModel.GetSources();

            _sourcesEntries = new ObservableCollection <string>(list);
            _searchTags     = "";
        }
コード例 #5
0
        private FlickrModel ShowPictures(int pageIndex)
        {
            FlickrModel model = new FlickrModel();

            XmlDocument doc = this.LoadPictures();

            if (null == doc)
            {
                return(null);
            }

            List <PhotoInfo> photos = new List <PhotoInfo>();

            foreach (XmlElement e in doc.DocumentElement.GetElementsByTagName("photo"))
            {
                PhotoInfo photo = new PhotoInfo();

                photo.Id     = e.GetAttribute("id");
                photo.Owner  = e.GetAttribute("owner");
                photo.Title  = e.GetAttribute("title");
                photo.Secret = e.GetAttribute("secret");
                photo.Server = e.GetAttribute("server");
                photo.Farm   = e.GetAttribute("Farm");

                photos.Add(photo);
            }

            int picturesPerPage = Rows * Columns;

            photos.RemoveRange(0, pageIndex * picturesPerPage);

            if (photos.Count > picturesPerPage)
            {
                photos.RemoveRange(picturesPerPage, photos.Count - picturesPerPage);
                model.ShowNext = true;
            }
            else
            {
                model.ShowNext = false;
            }


            if (pageIndex == 0)
            {
                model.ShowPrevious = false;
                model.ShowNext     = true;
            }
            else
            {
                model.ShowPrevious = true;
            }

            model.Index  = pageIndex;
            model.Photos = photos;

            return(model);
        }
コード例 #6
0
 /// <summary>
 /// Load ViewModel items asynchronous
 /// </summary>
 public async Task LoadDataAsync(bool forceRefresh = false)
 {
     var loadTasks = new Task[]
     {
         FlickrModel.LoadItemsAsync(forceRefresh),
         LinksUteisModel.LoadItemsAsync(forceRefresh),
     };
     await Task.WhenAll(loadTasks);
 }
コード例 #7
0
        protected async override void OnNavigatedTo(NavigationEventArgs e)
        {
            _dataTransferManager = DataTransferManager.GetForCurrentView();
            _dataTransferManager.DataRequested += OnDataRequested;

            _navigationHelper.OnNavigatedTo(e);

            await FlickrModel.LoadItemsAsync();

            FlickrModel.SelectItem(e.Parameter);

            if (FlickrModel != null)
            {
                FlickrModel.ViewType = ViewTypes.Detail;
            }
            DataContext = this;
        }
コード例 #8
0
 public FlickrService(IDistributedCache redisCache, IOptions <FlickrModel> flickrModel, IFlickrManager flickrManager)
 {
     _redisCache    = redisCache;
     _flickrModel   = flickrModel.Value;
     _flickrManager = flickrManager;
 }
コード例 #9
0
 public FlickrManager(IOptions <FlickrModel> flickrModel)
 {
     _flickrModel = flickrModel.Value;
 }