ListViewの要素をソートする

ListViewの要素をソートする方法を紹介します。

UI

下図のUIを作成します。ListViewをフォームに配置します。
ListViewの要素をソートする:画像1

ImageListプロパティ

ImageListのImagesプロパティには下図の4つのアイコンを設定しました。またImageSizeプロパティは(32,32)に設定しました。
ListViewの要素をソートする:画像2

ListViewプロパティ

ListViewの要素をソートするにはListViewのSortingプロパティを設定します。
ListViewの要素をソートする:画像3

Sortingプロパティのコンボボックスを開くと"None", "Ascending", "Descending"の要素が選択できます。
ListViewの要素をソートする:画像4

コード

下記のコードを記述します。
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プロパティがNoneの場合はコードで追加した順番に要素が表示されます。
ListViewの要素をソートする:画像5

Sorting = Ascending の場合

SortingプロパティがAscendingの場合はアイテムのTextプロパティのアルファベット順でソートされて表示されます。
ListViewの要素をソートする:画像6

Sorting = Ascending の場合

SortingプロパティがDeascendingの場合はアイテムのTextプロパティのアルファベット順の逆順でソートされて表示されます。
ListViewの要素をソートする:画像7
AuthorPortraitAlt
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
作成日: 2013-06-05
Copyright © 1995–2025 iPentec all rights reserverd.