示例#1
0
 private void btnResize_Click(object sender, RoutedEventArgs e)
 {
     Parallel.ForEach(resizeableFiles, (current) =>
     {
         ResizeMethods.ResizeStandart(current.FilePath, current.ResizeQuality);
     });
 }
示例#2
0
        //кнопка выбора пути
        private void btnOpenPath_Click(object sender, RoutedEventArgs e)
        {
            var dialog = new CommonOpenFileDialog();

            dialog.IsFolderPicker            = true;
            dialog.AddToMostRecentlyUsedList = false;
            dialog.AllowNonFileSystemItems   = false;
            dialog.EnsureFileExists          = true;
            dialog.EnsurePathExists          = true;
            dialog.EnsureReadOnly            = false;
            dialog.EnsureValidNames          = true;
            dialog.Multiselect    = false;
            dialog.ShowPlacesList = true;

            if (dialog.ShowDialog() == CommonFileDialogResult.Ok)
            {
                txbPath.Text = dialog.FileName;
                resizePath   = dialog.FileName;
                string[] filePaths = Directory.GetFiles(resizePath, "*.jp*", SearchOption.AllDirectories); //список файлов всех изображений
                resizeableFiles = ResizeMethods.GetResizeableFiles(filePaths, maxFileSize);                //список файлов, подлежащих ресайзу
                int range1 = resizeableFiles.Where(p => p.FileSize >= range11 && p.FileSize <= range12).Count();
                int range2 = resizeableFiles.Where(p => p.FileSize >= range21 && p.FileSize <= range22).Count();
                int range3 = resizeableFiles.Where(p => p.FileSize >= range31 && p.FileSize <= range32).Count();
                int range4 = resizeableFiles.Where(p => p.FileSize >= range41 && p.FileSize <= range42).Count();
                int range5 = resizeableFiles.Where(p => p.FileSize >= range51 && p.FileSize <= range52).Count();
                int range6 = resizeableFiles.Where(p => p.FileSize >= range61 && p.FileSize <= range62).Count();
                labelFilesTotal.Content      = string.Format("Всего файлов в указанной директории : \t{0}", filePaths.Length);
                labelFilesResizeable.Content = string.Format("Всего файлов размером более {0} Кб : \t{1}", maxFileSize, resizeableFiles.Count);
                labelRange1.Content          = string.Format("Файлов размером от {0} Кб до {1} Кб : \t{2}", range11, range12, range1);
                labelRange2.Content          = string.Format("Файлов размером от {0} Кб до {1} Кб : \t{2}", range21, range22, range2);
                labelRange3.Content          = string.Format("Файлов размером от {0} Кб до {1} Кб : \t{2}", range31, range32, range3);
                labelRange4.Content          = string.Format("Файлов размером от {0} Кб до {1} Кб : \t{2}", range41, range42, range4);
                labelRange5.Content          = string.Format("Файлов размером от {0} Кб до {1} Кб : \t{2}", range51, range52, range5);
                labelRange6.Content          = string.Format("Файлов размером от {0} Кб до {1} Кб : \t{2}", range61, range62, range6);
            }
        }