英語で読む

次の方法で共有


ListView.Sorting プロパティ

定義

コントロール内の項目の並べ替え順序を取得または設定します。

public System.Windows.Forms.SortOrder Sorting { get; set; }

プロパティ値

SortOrder 値のいずれか 1 つ。 既定値は、None です。

例外

指定された値が SortOrder 値ではありません。

次のコード例では、3 つのListViewItemオブジェクトをListView指定し、項目ごとに 3 つのListViewItem.ListViewSubItemオブジェクトを指定してコントロールを作成します。 この例では、詳細ビューにサブ項目を表示するオブジェクトも作成 ColumnHeader します。 コード例では、オブジェクトのイメージListViewItemを提供するために、2 つのImageListオブジェクトも作成されます。 これらのImageListオブジェクトは、 プロパティと SmallImageList プロパティにLargeImageList追加されます。 この例では、コントロールの作成に次のプロパティを ListView 使用します。

この例では、 に Form コードを追加し、この例で作成したメソッドをフォームのコンストラクターまたは別のメソッドから呼び出す必要があります。 この例では、 という名前MySmallImage1MySmallImage2MyLargeImage1MyLargeImage2のイメージがドライブ C のルート ディレクトリに配置されている必要もあります。

private void CreateMyListView()
{
    // Create a new ListView control.
    ListView listView1 = new ListView();
    listView1.Bounds = new Rectangle(new Point(10,10), new Size(300,200));

    // Set the view to show details.
    listView1.View = View.Details;
    // Allow the user to edit item text.
    listView1.LabelEdit = true;
    // Allow the user to rearrange columns.
    listView1.AllowColumnReorder = true;
    // Display check boxes.
    listView1.CheckBoxes = true;
    // Select the item and subitems when selection is made.
    listView1.FullRowSelect = true;
    // Display grid lines.
    listView1.GridLines = true;
    // Sort the items in the list in ascending order.
    listView1.Sorting = SortOrder.Ascending;
                
    // Create three items and three sets of subitems for each item.
    ListViewItem item1 = new ListViewItem("item1",0);
    // Place a check mark next to the item.
    item1.Checked = true;
    item1.SubItems.Add("1");
    item1.SubItems.Add("2");
    item1.SubItems.Add("3");
    ListViewItem item2 = new ListViewItem("item2",1);
    item2.SubItems.Add("4");
    item2.SubItems.Add("5");
    item2.SubItems.Add("6");
    ListViewItem item3 = new ListViewItem("item3",0);
    // Place a check mark next to the item.
    item3.Checked = true;
    item3.SubItems.Add("7");
    item3.SubItems.Add("8");
    item3.SubItems.Add("9");

    // Create columns for the items and subitems.
    // Width of -2 indicates auto-size.
    listView1.Columns.Add("Item Column", -2, HorizontalAlignment.Left);
    listView1.Columns.Add("Column 2", -2, HorizontalAlignment.Left);
    listView1.Columns.Add("Column 3", -2, HorizontalAlignment.Left);
    listView1.Columns.Add("Column 4", -2, HorizontalAlignment.Center);

    //Add the items to the ListView.
    listView1.Items.AddRange(new ListViewItem[]{item1,item2,item3});

    // Create two ImageList objects.
    ImageList imageListSmall = new ImageList();
    ImageList imageListLarge = new ImageList();

    // Initialize the ImageList objects with bitmaps.
    imageListSmall.Images.Add(Bitmap.FromFile("C:\\MySmallImage1.bmp"));
    imageListSmall.Images.Add(Bitmap.FromFile("C:\\MySmallImage2.bmp"));
    imageListLarge.Images.Add(Bitmap.FromFile("C:\\MyLargeImage1.bmp"));
    imageListLarge.Images.Add(Bitmap.FromFile("C:\\MyLargeImage2.bmp"));

    //Assign the ImageList objects to the ListView.
    listView1.LargeImageList = imageListLarge;
    listView1.SmallImageList = imageListSmall;

    // Add the ListView to the control collection.
    this.Controls.Add(listView1);
}

注釈

Sortingプロパティを使用すると、コントロール内でListView項目を並べ替えるかどうかを指定できます。 既定では、並べ替えは実行されません。 プロパティが Sorting または DescendingAscending設定されている場合、 内のListView項目はアルファベット順 (プロパティが にAscending設定されている場合) または降順 (プロパティが に設定されている場合) で自動的にDescending並べ替えられます。 このプロパティを使用すると、コントロールに表示されるアイテムを ListView 自動的に並べ替えて、多数のアイテムが使用可能な場合にユーザーがアイテムを簡単に見つけられるようにすることができます。

プロパティを使用 Sorting する代わりに独自のアイテムの並べ替えを実行する場合は、 プロパティを ListViewItemSorter メソッドと Sort 組み合わせて使用します。

プロパティが 以外SortOrder.NoneListView.Sorting値に設定されている場合、または プロパティがListViewItemSorter設定されている場合、アイテムが追加されると、リストが自動的に並べ替えられます。 ラベル テキストが変更されると、アイテムは自動的に並べ替えられません。

適用対象

製品 バージョン
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

こちらもご覧ください