完整代码如下,我在Columns中加入的所有标题都无法显示,而且在DETTAIL模式下LISTVIEWITEM也无法显示,就是在DETAIL模式下什么也看不到.但在其他模式中能正常显示请问是什么原因?
public class Form1 : System.Windows.Forms.Form
{   private System.Collections.Specialized.StringCollection forcol;
private System.Windows.Forms.ListView listView1;
private System.Windows.Forms.Button button2;
private System.Windows.Forms.Button button4;
private System.Windows.Forms.Button Big;
private System.Windows.Forms.Button detail;
private System.Windows.Forms.ImageList imageList1;
private System.Windows.Forms.ImageList imageList2;
private System.Windows.Forms.ColumnHeader columnHeader1;
private System.ComponentModel.IContainer components;
public Form1()
{
InitializeComponent();
                          forcol= new System.Collections.Specialized.StringCollection();
createlistheader();
paintlistview(@"c:\");
                            forcol.Add(@"c:\");
}
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null) 
{
components.Dispose();
}
}
base.Dispose( disposing );
}static void Main() 
{
Application.Run(new Form1());
}
private void createlistheader()
{
    ColumnHeader colheader;
colheader=new ColumnHeader();
colheader.Text="size";
this.listView1.Columns.Add(colheader);
colheader= new ColumnHeader();
colheader.Text="Name";
this.listView1.Columns.Add(colheader);
}
private void paintlistview(string root)
{
try
{
ListViewItem lvi;
ListViewItem.ListViewSubItem lvis;
System.IO.DirectoryInfo dir;

dir=new System.IO.DirectoryInfo(root);
System.IO.DirectoryInfo[] dirs=dir.GetDirectories();
System.IO.FileInfo[] files=dir.GetFiles();
this.listView1.Columns.Clear();
this.listView1.BeginUpdate();
foreach(System.IO.DirectoryInfo di in dirs)
{
lvi=new ListViewItem();
lvi.ImageIndex=0;
lvis=new ListViewItem.ListViewSubItem();
lvi.Text=di.Name;
lvis.Text=di.LastAccessTime.ToString();
lvi.SubItems.Add(lvis);
this.listView1.Items.Add(lvi);
}
foreach(System.IO.FileInfo fi in files)
{
lvi=new ListViewItem();
lvi.ImageIndex=0;
lvis=new ListViewItem.ListViewSubItem();
lvi.Text=fi.Name;
lvis.Text=fi.FullName;
lvi.SubItems.Add(lvis);
this.listView1.Items.Add(lvi);
}
this.listView1.EndUpdate();
}
catch(System.Exception err)
{MessageBox.Show("error"+err.Message);}
}
private void Big_Click(object sender, System.EventArgs e)
{
this.listView1.View=View.LargeIcon;
} private void detail_Click(object sender, System.EventArgs e)
{
this.listView1.View=View.Details;
}
}
}