public ImageViewModel TryLoadImage() { OpenFileDialog fileDialog = new OpenFileDialog() { CheckFileExists = true, CheckPathExists = true, Multiselect = true, Filter = "JPG Files (*.jpg)|*.jpg|JPEG Files (*.jpeg)|*.jpeg|PNG Files (*.png)|*.png" }; Func<string, bool> isValidFile = file => { string[] extensions = { ".jpg", ".png", ".jpeg" }; string ext = Path.GetExtension(file); return extensions.Contains(ext); }; fileDialog.FileOk += (sender, args) => { if (!fileDialog.FileNames.All(isValidFile)) args.Cancel = true; }; bool? dialogResult = fileDialog.ShowDialog(); if (dialogResult.HasValue && dialogResult.Value) { try { Stream[] files = fileDialog.OpenFiles(); for (int i = 0; i < fileDialog.FileNames.Length; i++) { string filePath = fileDialog.FileNames[i]; Stream file = files[i]; byte[] fileData = null; using (var stream = new MemoryStream()) { file.CopyTo(stream); fileData = stream.ToArray(); } ImageViewModel viewModel = new ImageViewModel(0, Path.GetFileName(filePath), fileData); return viewModel; } } catch (Exception ex) { } } return null; }
/// <summary> /// Adds the items. /// </summary> /// <param name="files">The files.</param> private void AddItems(OpenFileDialog files) { Stream[] fileStreams = files.OpenFiles(); for (int index = 0; index < files.FileNames.Length; index++) { Gallery gallery = ((Gallery)galleryListBox.SelectedItem); ClientImage image = new ClientImage { ImageName = TruncatePath(files.FileNames[index]), GalleryName = gallery.Name, GalleryId = gallery.GalleryID, PhotoBytes = GetByteArrayFromStream(fileStreams[index]) }; uploadListBox.Items.Add(image); } }
private void OpenFile_Click(object sender, RoutedEventArgs e) { filePath.Clear(); textBox_Files.Text = ""; StringBuilder sb = new StringBuilder(); OpenFileDialog dialog = new OpenFileDialog(); dialog.Multiselect = true; dialog.Filter = "Text Files (.txt)|*.txt"; dialog.ShowDialog(); if (dialog.OpenFiles() != null) { filePath.AddRange(dialog.FileNames); sb.AppendLine("(" + filePath.Count + "шт.) "); for (int i = 0; i < filePath.Count; i++) { sb.AppendLine(System.IO.Path.GetFileName(filePath[i])); } textBox_Files.Text = sb.ToString(); } }
public Stream[] OpenFiles() { return(mInnerDialog.OpenFiles()); }
private void AddPatterns() { OpenFileDialog fileDialog = new OpenFileDialog() { CheckFileExists = true, CheckPathExists = true, Multiselect = true, Filter = "JPEG Files (*.jpeg)|*.jpeg|PNG Files (*.png)|*.png|JPG Files (*.jpg)|*.jpg" }; Func<string, bool> isValidFile = file => { string[] extensions = { ".png", ".jpeg", ".jpg" }; string ext = Path.GetExtension(file); return extensions.Contains(ext); }; fileDialog.FileOk += (sender, args) => { if (!fileDialog.FileNames.All(isValidFile)) args.Cancel = true; }; bool? dialogResult = fileDialog.ShowDialog(); if (dialogResult.HasValue && dialogResult.Value) { try { Stream[] files = fileDialog.OpenFiles(); for (int i = 0; i < fileDialog.FileNames.Length; i++) { string filePath = fileDialog.FileNames[i]; Stream file = files[i]; byte[] fileData = null; using (var stream = new MemoryStream()) { file.CopyTo(stream); fileData = stream.ToArray(); } CheckablePatternDataViewModel viewModel = new PatternDataViewModel(Path.GetFileName(filePath), Pattern.PatternType, fileData) .ToCheckable(ItemState.Added); Children.Add(viewModel); } } catch (Exception ex) { } CheckItem(); } }