準備
(なし)
デザイン
1. フォーム (Form1) にボタン (button1) を配置します。
2. フォーム (Form1) にリストビュー (listView1) を配置します。
サンプルコード (C#)
// 名前空間の追加 // (なし) // コード private void Form1_Load(object sender, EventArgs e) { listView1.View = View.Details; listView1.Columns.Add("メーカー", 100, HorizontalAlignment.Left); listView1.Columns.Add("パソコン名", 100, HorizontalAlignment.Left); listView1.Items.Add("NEC").SubItems.Add("ValueStar"); listView1.Items.Add("SONY").SubItems.Add("VAIO"); listView1.Items.Add("DELL").SubItems.Add("Precision"); } delegate IEnumerable<string> Test(ListViewItem.ListViewSubItemCollection subitems); private void button1_Click(object sender, EventArgs e) { Test td = new Test(is2); foreach (ListViewItem lvi in listView1.Items) { string s2 = string.Join(",", td(lvi.SubItems)); listBox1.Items.Add(s2); } } private IEnumerable<string> is2(ListViewItem.ListViewSubItemCollection subitems) { for (int i = 0; i < subitems.Count; i++) { yield return subitems[i].Text; } }
解説
構成は前回分とほぼ同じです。サブアイテムのコレクションを作成するときに delegate を使用しています。
結果
動作確認環境
Visual Studio 2015 Professional (C# 6.0)