の列とリストビュー内のオブジェクトのリストを表示する方法を、私が作成List<DeletionTarget>
:は、フォームが<code>InitializeComponent</code>呼び出した後、各プロパティ
DeletionTarget
は、これらのプロパティを持つ単純なオブジェクトがある
var deletionList = new List<DeletionTarget>();
deletionList.Add(new DeletionTarget("path1", new DateTime(2016, 1, 10), false));
deletionList.Add(new DeletionTarget("path2", new DateTime(2016, 2, 10), true));
deletionList.Add(new DeletionTarget("path3", new DateTime(2016, 3, 10), false));
deletionList.Add(new DeletionTarget("path4", new DateTime(2016, 4, 10), true));
deletionList.Add(new DeletionTarget("path5", new DateTime(2016, 5, 10), false));
public void InitializeListView()
{
var header1 = listView1.Columns.Add("Path", -2, HorizontalAlignment.Left);
var header2 = listView1.Columns.Add("Period", -2, HorizontalAlignment.Left);
var header3 = listView1.Columns.Add("Recurse", -2, HorizontalAlignment.Left);
}
:
public string Path;
public DateTime Period;
public bool Recurse;
public DeletionTarget(string path, DateTime period, bool recurse)
{
Path = path;
Period = period;
Recurse = recurse;
}
次に、私がInitializeView()
メソッドを呼び出します
これは、ListView
にいくつかの列を追加することになっています(DeletionTarget
オブジェクトの各プロパティに対して1つ)。今ではListView
にデータを追加するための時間です:
foreach (var item in deletionList)
{
var lvi = new ListViewItem(new[] { item.Path, item.Period.ToString(), item.Recurse.ToString() });
listView1.Items.Add(lvi);
}
私はプログラムを実行すると、これは私のフォームは次のようになります。あなたが見ることができるように
、これはかなりあります役に立たない。別々の行に表示するためには各項目が必要で、プロパティごとに列が必要です。誰かが私がここで間違っていることを理解するのを助けてくれますか?
はListView
上
View
オプションが間違ったオプション(
LargeIcon
)に設定したので、これが起こっていた