LargeIcon — добавление элемента и изображения пользователем

В таких видах списка ListView, как LargeIcon, SmallIcon, List, Tile добавление элемента в коллекцию везде аналогично.
Скрыть

Показать

Копировать
  Form1.cs  
  • using System;
  • using System.Collections.Generic;
  • using System.ComponentModel;
  • using System.Data;
  • using System.Drawing;
  • using System.Linq;
  • using System.Text;
  • using System.Threading.Tasks;
  • using System.Windows.Forms;
  •  
  • namespace _0049 {
  •  public partial class Form1 : Form {
  •   //создаем коллекцию класса ImageList
  •   ImageList imageList1 = new ImageList();
  •   //индекс коллекции
  •   int index = 0;
  •   public Form1() {
  •    InitializeComponent();
  •   }
  •   //кнопка Выберите изображение
  •   private void button1_Click(object sender, EventArgs e) {
  •    openFileDialog1.Filter = "Images (*.jpg; *.jpeg; *.gif; *.bmp; *.ico; *.png) | *.jpg; *.jpeg; *.gif; *.bmp; *.ico; *.png";
  •    if(openFileDialog1.ShowDialog() == DialogResult.OK) {
  •     textBox2.Text = openFileDialog1.FileName;
  •    }
  •   }
  •   //кнопка Добавить
  •   private void button2_Click(object sender, EventArgs e) {
  •    //отображаем список в виде текста с необязательным крупным изображением
  •    listView1.View = View.LargeIcon;
  •  
  •    //задаем размер изображения
  •    imageList1.ImageSize = new Size(128, 128);
  •    //заполняем коллекцию
  •    imageList1.Images.Add(Image.FromFile(textBox2.Text));
  •  
  •    listView1.LargeImageList = imageList1;
  •    //заполняем коллекцию
  •    listView1.Items.Add(textBox1.Text, index++);
  •  
  •    textBox1.Clear();
  •    textBox2.Clear();
  •   }
  •   //кнопка Удалить
  •   private void button3_Click(object sender, EventArgs e) {
  •    foreach(ListViewItem i in listView1.SelectedItems) {
  •     listView1.Items.RemoveAt(i.Index);
  •    }
  •   }
  •   //кнопка OK
  •   private void button4_Click(object sender, EventArgs e) {
  •    foreach(ListViewItem i in listView1.SelectedItems) {
  •     textBox3.Text += " " + i.Text + "\r\n";
  •    }
  •   }
  •   //кнопка Clear
  •   private void button5_Click(object sender, EventArgs e) {
  •    textBox3.Clear();
  •   }
  •  }
  • }