我试图以编程方式创建ListView,并用先前从文件确定的数据列表填充它。我正在尝试设置列标题,并使用以下代码填充数据,但结果是数据未对齐一列,如在所附图像中可以看到的那样。如何使数据对齐在正确的列中?
ListView listView1 = new ListView();
ColumnHeader logCountHeader = new ColumnHeader();
logCountHeader.Text = "#";
logCountHeader.Width = 40;[![enter image description here][1]][1]
listView1.Columns.Add(logCountHeader);
ColumnHeader logTypeHeader = new ColumnHeader();
logTypeHeader.Text = "Log Type";
logTypeHeader.Width = 150;
listView1.Columns.Add(logTypeHeader);
ColumnHeader dataHeader = new ColumnHeader();
dataHeader.Text = "Message";
dataHeader.Width = 300;
listView1.Columns.Add(dataHeader);
ColumnHeader timeHeader = new ColumnHeader();
timeHeader.Text = "Time";
timeHeader.Width = 150;
listView1.Columns.Add(timeHeader);
string log_type_name = "";
string log_data = "";
string log_date = "";
string log_number = "";
for (int i = (_debug_entries-1); i >= 0; i--)
{
log_number = i.ToString();
log_type_name = _log_type[i].ToString();
log_data = _log_data[i];
log_date = _log_timestamp[i].ToString();
ListViewItem listviewitem = new ListViewItem();
listviewitem.SubItems.Add(log_number);
listviewitem.SubItems.Add(log_type_name);
listviewitem.SubItems.Add(log_data);
listviewitem.SubItems.Add(log_date);
listView1.Items.Add(listviewitem);
}
return listView1;
答案 0 :(得分:1)
项目字符串应该是ListView
构造函数的一部分,而不是子项目。
ListViewItem listviewitem = new ListViewItem(log_number);
listviewitem.SubItems.Add(log_type_name);
listviewitem.SubItems.Add(log_data);
listviewitem.SubItems.Add(log_date);
listView1.Items.Add(listviewitem);
您需要设置ListView.View
才能看到子项
ListView listView1 = new ListView();
listView1.View = View.Details;
答案 1 :(得分:0)
for (int i =0; i <= _debug_entries-1; i++){
log_number = i.ToString();
log_type_name = _log_type[i].ToString();
log_data = _log_data[i];
log_date = _log_timestamp[i].ToString();
ListViewItem listviewitem = new ListViewItem();
listviewitem.SubItems.Add(log_number);
listviewitem.SubItems.Add(log_type_name);
listviewitem.SubItems.Add(log_data);
listviewitem.SubItems.Add(log_date);
listView1.Items.Add(listviewitem);
} 使用上面的代码可以解决您的问题。