ListView(リストビュー)の項目を削除するコードを紹介します。
概要
Listviewから項目を削除する場合は、ListViewのItemsオブジェクトのRemove() メソッドを呼び出します。
プログラム例
UI
下図のUIを作成します。
コード
下記のコードを記述します。
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 FormAddDelete : Form
{
public FormAddDelete()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
ListViewItem lvi = new ListViewItem();
lvi.Text = "Penguin";
lvi.ImageIndex = 0;
listView1.Items.Add(lvi);
lvi = new ListViewItem("Chicken");
lvi.ImageIndex = 1;
listView1.Items.Add(lvi);
lvi = new ListViewItem("Pig");
lvi.ImageIndex = 2;
listView1.Items.Add(lvi);
}
private void button2_Click(object sender, EventArgs e)
{
if (listView1.SelectedItems.Count > 0) {
listView1.Items.Remove(listView1.SelectedItems[0]);
}
}
}
}
解説
button1についてはListviewに項目を追加するコードですので、
こちらの記事を参照してください。
Button2のコードが下記になります。最初にif文でListViewのSelectedItemsオブジェクトを取得し、Countプロパティを確認してListViewで項目が選択されてる要素の個数を取得します。項目が一つも選択されていなければ何も処理をしません。選択されている項目がある場合は、ItemsオブジェクトのRemoveメソッドを呼び出します。Removeメソッドの第一引数に削除したいListItemオブジェクトを与えます。今回のコードではListViewのSelectedItems オブジェクトの最初の要素を与えていますので、ListViewの選択された項目の最初の一つの項目を削除する動作になります。
if (listView1.SelectedItems.Count > 0) {
listView1.Items.Remove(listView1.SelectedItems[0]);
}
実行結果
上記のプロジェクトを実行します。下図のウィンドウが表示されます。[Add]ボタンをクリックします。
Addボタンをクリックすると、ListViewに項目が追加されます。
ListViewの項目をクリックして選択します。今回は"Chicken"の項目を選択します。選択状態のままで[Delete]ボタンをクリックします。
選択した"Chicken"の項目が削除されます。
同様の手順で"Penguin"の項目を選択します。選択状態で[Delete]ボタンをクリックします。
選択されている"Penguin"の項目が削除されます。
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
最終更新日: 2024-01-07
作成日: 2011-09-06