Пример #1
0
 public void Add(ImageViewModel img)
 {
     if (_cache.ContainsKey(img.Id))
         _cache[img.Id] = img;
     else
         _cache.Add(img.Id, img);
 }
Пример #2
0
 public Uri RandomImageUrl()
 {
     if (_cache.Count == 0)
         return new Uri(@"file:///Family_christmas;component/ApplicationIcon.png");
     Random rnd = new Random();
     int id = rnd.Next(0, _cache.Count);
     var arr = new ImageViewModel[_cache.Count];
     _cache.Values.CopyTo(arr, 0);
     return arr[id].ImageUri;
 }
Пример #3
0
 public ImageViewModel RandomImage()
 {
     if (_cache.Count == 0)
         return null;
     Random rnd = new Random();
     int id = rnd.Next(0, _cache.Count);
     var arr = new ImageViewModel[_cache.Count];
     _cache.Values.CopyTo(arr, 0);
     return arr[id];
 }
Пример #4
0
 public String Random()
 {
     if (_cache.Count == 0)
         return "";
     Random rnd = new Random();
     int id = rnd.Next(0, _cache.Count);
     var arr = new ImageViewModel[_cache.Count];
     _cache.Values.CopyTo(arr, 0);
     return arr[id].Id;
 }
Пример #5
0
 private void PhoneApplicationPage_Loaded(object sender, RoutedEventArgs e)
 {
     if (NavigationContext.QueryString.ContainsKey("id"))
     {
         item = ImageCache.GetInstance().Get(NavigationContext.QueryString["id"]);
         GoLive();
         DataContext = item;
         DetailGrid.DataContext = item;
         imageMap.DataContext = item;
         AutoFocusMap();
     }
 }
Пример #6
0
 public void GetPhotos()
 {
     var options = DefaultOptions;
     if (_watcher != null && _watcher.Status == GeoPositionStatus.Ready)
     {
         options.BoundaryBox = new BoundaryBox(_watcher.Position.Location.Longitude- 0.5, _watcher.Position.Location.Latitude - 0.5, _watcher.Position.Location.Longitude + 0.5, _watcher.Position.Location.Latitude + 0.5, GeoAccuracy.City);
         //options.Longitude = _watcher.Position.Location.Longitude;
         //options.Latitude = _watcher.Position.Location.Latitude;
     }
     _flickr.PhotosSearchAsync(options, delegate(FlickrResult<PhotoCollection> result)
                                                  {
                                                      if (result.HasError) return;
                                                      foreach (var curr in result.Result)
                                                      {
                                                          var model = new ImageViewModel
                                                                {
                                                                    AuthorUri =
                                                                        new Uri(OwnerPrefix + curr.OwnerName),
                                                                    Name = curr.Title,
                                                                    Image = new BitmapImage(new Uri(curr.Small320Url)),
                                                                    ImageUri = new Uri(curr.Small320Url),
                                                                    Position =
                                                                        new GeoCoordinate(curr.Latitude,
                                                                                          curr.Longitude),
                                                                    TakenOn = curr.DateTaken,
                                                                    Id = curr.PhotoId,
                                                                    AuthorName = curr.OwnerName,
                                                                    Description = curr.Description
                                                                };
                                                          foreach (var item in observers)
                                                          {
                                                              item(model);
                                                          }
                                                      }
                                                  });
 }