private void Form1_Load(object sender, EventArgs e) { InitializeOpenFileDialog(); } private void InitializeOpenFileDialog() { // Set the file dialog to filter for graphics files. this.openFileDialog1.Filter = "Images (*.BMP;*.JPG;*.GIF)|*.BMP;*.JPG;*.GIF|" + "All files (*.*)|*.*"; // Allow the user to select multiple images. this.openFileDialog1.Multiselect = true; this.openFileDialog1.Title = "My Image Browser"; } private void selectFilesButton_Click(object sender, EventArgs e) { DialogResult dr = this.openFileDialog1.ShowDialog(); if (dr == System.Windows.Forms.DialogResult.OK) { // Read the files foreach (String file in openFileDialog1.FileNames) { // Create a PictureBox. try { PictureBox pb = new PictureBox(); Image loadedImage = Image.FromFile(file); pb.Height = loadedImage.Height; pb.Width = loadedImage.Width; pb.Image = loadedImage; flowLayoutPanel1.Controls.Add(pb); } catch (Exception ex) { // Could not load the image - probably related to Windows file system permissions. MessageBox.Show("Cannot display the image: " + file.Substring(file.LastIndexOf('\\')) + ". You may not have permission to read the file, or " + "it may be corrupt.\n\nReported error: " + ex.Message); } } }
flowLayoutPanel
AutoScroll=True
From tutorial[^]:Set AutoScroll In some programs, the FlowLayoutPanel may end up being too small to show all the controls. In this case, you can set the AutoScroll property to True. This will make the FlowLayoutPanel display scrollbars when the controls overflow the enclosing area.
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)