예제 #1
0
 private void Button_NextPhoto_Click(object sender, RoutedEventArgs e)
 {
     if (ImagesCollection.IndexOf(ImageInfo) < ImagesCollection.Count - 1)
     {
         ImageInfo = ImagesCollection[ImagesCollection.IndexOf(ImageInfo) + 1];
         GC.Collect();
     }
 }
예제 #2
0
 private void Button_LastPhoto_Click(object sender, RoutedEventArgs e)
 {
     if (ImagesCollection.IndexOf(ImageInfo) > 0)
     {
         ImageInfo = ImagesCollection[ImagesCollection.IndexOf(ImageInfo) - 1];
         GC.Collect();
     }
 }
예제 #3
0
        /// <summary>
        /// For each collection
        /// Save Name and add files(with image) to FutureAccessList
        /// </summary>
        //private static void SaveData()
        //{
        //    ApplicationDataContainer localSettings = ApplicationData.Current.LocalSettings;
        //    localSettings.DeleteContainer(_containerCollections);
        //    localSettings.CreateContainer(
        //        _containerCollections, ApplicationDataCreateDisposition.Always);
        //    if (localSettings.Containers.ContainsKey(_containerCollections))
        //    {
        //        int countCollection = 0;
        //        foreach (var collection in Collections)
        //        {
        //            string colNameToken = _collectionNameKey + countCollection.ToString();
        //            localSettings.Containers[_containerCollections].Values[colNameToken] = collection.Name;

        //            string collectionToken = _containerName + countCollection.ToString();
        //            localSettings.Containers[_containerCollections].DeleteContainer(collectionToken);
        //            localSettings.Containers[_containerCollections].CreateContainer(
        //                collectionToken, ApplicationDataCreateDisposition.Always);
        //            if (localSettings.Containers[_containerCollections].Containers.ContainsKey(collectionToken))
        //            {
        //                int countImage = 0;
        //                foreach (var file in collection.Images)
        //                {
        //                    string fileToken = StorageApplicationPermissions.FutureAccessList.Add(file);
        //                    string imageToken = _imageKey + countImage.ToString();
        //                    localSettings.Containers[_containerCollections].Containers[collectionToken].Values[imageToken] = fileToken;
        //                    countImage++;
        //                }
        //                countCollection++;
        //            }
        //        }
        //    }
        //}

        /// <summary>
        /// For each collection
        /// Get Name of collection and files(with image) from FutureAccessList
        /// </summary>
        //private async void LoadDataAsync()
        //{
        //    ApplicationDataContainer localSettings = ApplicationData.Current.LocalSettings;
        //    if (localSettings.Containers.ContainsKey(_containerCollections))
        //    {
        //        int countCollection = 0;
        //        foreach (var key in localSettings.Containers[_containerCollections].Containers)
        //        {
        //            string colNameToken = _collectionNameKey + countCollection.ToString();
        //            string nameCollection = (string)localSettings.Containers[_containerCollections].Values[colNameToken];
        //            var collection = new ImagesCollection(nameCollection);
        //            Collections.Add(collection);

        //            string collectionKey = _containerName + countCollection.ToString();
        //            int countImage = 0;
        //            foreach (var token in localSettings.Containers[_containerCollections].Containers[collectionKey].Values)
        //            {
        //                string imageKey = _imageKey + countImage.ToString();
        //                if (localSettings.Containers[_containerCollections].Containers[collectionKey].Values.ContainsKey(imageKey))
        //                {
        //                    string tokenFile = (string)localSettings.Containers[_containerCollections].Containers[collectionKey].Values[imageKey];
        //                    StorageFile file = await StorageApplicationPermissions.FutureAccessList.GetFileAsync(tokenFile);
        //                    if (file != null)
        //                    {
        //                        Collections[countCollection].AddImage(file);
        //                        // Collections.Add(file);
        //                    }
        //                }

        //                countImage++;
        //            }
        //            countCollection++;
        //        }
        //    }
        //}
        public static void InsertCollection(int index, ImagesCollection collection)
        {
            if (index >= 0)
            {
                Collections.RemoveAt(index);
                Collections.Insert(index, collection);
            }
            else
            {
                Collections.Clear();
                Collections.Add(collection);
            }
        }
예제 #4
0
        public static async Task <ImagesCollection> CreateAddonCollectionAsync(string nameFolder)
        {
            ImagesCollection collection = new ImagesCollection(nameFolder);
            StorageFolder    dataFolder = await Package.Current.InstalledLocation.GetFolderAsync("Add-ons");

            StorageFolder addonFolder = await dataFolder.GetFolderAsync(nameFolder);

            IReadOnlyList <StorageFile> files = await addonFolder.GetFilesAsync();

            foreach (StorageFile file in files)
            {
                collection.AddImagePath(file.Path);
            }
            return(collection);
        }
예제 #5
0
        private void Button_NextPhoto_Click(object sender, RoutedEventArgs e)
        {
            if (ImagesCollection.IndexOf(ImageInfo) < ImagesCollection.Count - 1)
            {
                ImageInfo = ImagesCollection[ImagesCollection.IndexOf(ImageInfo) + 1];

                slider.Value = 0;

                GC.Collect();

                GC.WaitForPendingFinalizers();

                GC.Collect();
            }
        }
        private async Task AddImages(List <string> list)
        {
            foreach (var file in list)
            {
                try
                {
                    logger.Info($"File {file}");
                    var image  = new Photo(file);
                    var result = ImageLoader.GetThumbnailAsync(file);
                    await result.ContinueWith(t =>
                    {
                        image.Thumbnail = t.Result;
                    });

                    ImagesCollection.Add(image);
                }
                catch (Exception ex)
                {
                    logger.Error(ex, "Image Add");
                }
            }
        }
예제 #7
0
 public ImagesCollectionTests()
 {
     Images = new ImagesCollection();
 }
 private void Down()
 {
     ImagesCollection.Down();
 }
 private void Up()
 {
     ImagesCollection.Up();
 }