ListViewの要素をソートする方法を紹介します。
下図のUIを作成します。ListViewをフォームに配置します。
ImageListのImagesプロパティには下図の4つのアイコンを設定しました。またImageSizeプロパティは(32,32)に設定しました。
ListViewの要素をソートするにはListViewのSortingプロパティを設定します。
Sortingプロパティのコンボボックスを開くと"None", "Ascending", "Descending"の要素が選択できます。
下記のコードを記述します。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace ListViewDemo
{
public partial class FormSort : Form
{
public FormSort()
{
InitializeComponent();
}
private void FormSort_Load(object sender, EventArgs e)
{
ListViewItem lvi = new ListViewItem("Penguin",0);
listView1.Items.Add(lvi);
lvi = new ListViewItem("Chicken",1);
listView1.Items.Add(lvi);
lvi = new ListViewItem("Pig",2);
listView1.Items.Add(lvi);
lvi = new ListViewItem("Whale", 3);
listView1.Items.Add(lvi);
}
}
}
SortingプロパティがNoneの場合はコードで追加した順番に要素が表示されます。
SortingプロパティがAscendingの場合はアイテムのTextプロパティのアルファベット順でソートされて表示されます。
SortingプロパティがDeascendingの場合はアイテムのTextプロパティのアルファベット順の逆順でソートされて表示されます。