private void button1_Click(object sender, EventArgs e)
{
//textBox1.Text = listView1.Items.ToString();
string path = textBox1.Text;
DirectoryInfo dirinfo = new DirectoryInfo(path);
DirectoryInfo[] arrdirinfo;
arrdirinfo = dirinfo.GetDirectories();
listView1.Items.Clear();
foreach (DirectoryInfo di in arrdirinfo)
{
ListViewItem liv = new ListViewItem(di.Name);
if (Path.GetExtension(di.Name).ToString().ToUpper()=="RAR")
{
liv.ImageIndex = 2;
}
else
{
liv.ImageIndex = 3;
}
liv.SubItems.Add(di.LastWriteTime.ToString());
listView1.Items.Add(liv);
}
}
问题1:为什么我注释的那行,textBox输出的是一段英文(好像是System.....什么什么的),而不是我选中的ITEMS的名字呢!
问题2:在if判定文件类型的时候怎么在测试的时候不行呢,完全没改变图标。。
求解答,谢谢!
{
//textBox1.Text = listView1.Items.ToString();
string path = textBox1.Text;
DirectoryInfo dirinfo = new DirectoryInfo(path);
DirectoryInfo[] arrdirinfo;
arrdirinfo = dirinfo.GetDirectories();
listView1.Items.Clear();
foreach (DirectoryInfo di in arrdirinfo)
{
ListViewItem liv = new ListViewItem(di.Name);
if (Path.GetExtension(di.Name).ToString().ToUpper()=="RAR")
{
liv.ImageIndex = 2;
}
else
{
liv.ImageIndex = 3;
}
liv.SubItems.Add(di.LastWriteTime.ToString());
listView1.Items.Add(liv);
}
}
问题1:为什么我注释的那行,textBox输出的是一段英文(好像是System.....什么什么的),而不是我选中的ITEMS的名字呢!
问题2:在if判定文件类型的时候怎么在测试的时候不行呢,完全没改变图标。。
求解答,谢谢!
listView1.Items[0].Text才是内容Path.GetExtension返回值中包括 '.',好好看帮助
http://msdn.microsoft.com/zh-cn/library/system.windows.forms.listview.items(v=vs.80).aspx
输出是listview1:{e:\},括号里面的才是我想要的值,怎么多了点东西呢!
还有第二个问题,用了上面2位的方法还是不行,不知道什么问题,我给全部代码你看看
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
textBox1.Text = "我的电脑";
string[] arrDrives = Directory.GetLogicalDrives();
foreach (string str in arrDrives)
{
ListViewItem liv = new ListViewItem(str, 0);
listView1.Items.Add(liv);
}
} private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = listView1.SelectedItems[0].ToString();
string path = textBox1.Text;
DirectoryInfo dirinfo = new DirectoryInfo(path);
DirectoryInfo[] arrdirinfo;
arrdirinfo = dirinfo.GetDirectories();
listView1.Items.Clear();
foreach (DirectoryInfo di in arrdirinfo)
{
ListViewItem liv = new ListViewItem(di.Name);
if (Path.GetExtension(di.Name).TrimStart('.').ToString().ToUpper() == "RAR")
{
liv.ImageIndex = 2;
}
else
{
liv.ImageIndex = 3;
}
liv.SubItems.Add(di.LastWriteTime.ToString()); listView1.Items.Add(liv);
}
} private void 大图标ToolStripMenuItem_Click(object sender, EventArgs e)
{
listView1.View = View.LargeIcon;
} private void 小图标ToolStripMenuItem_Click(object sender, EventArgs e)
{
listView1.View = View.SmallIcon;
} private void 详细ToolStripMenuItem_Click(object sender, EventArgs e)
{
listView1.View = View.Details;
} private void 列表ToolStripMenuItem_Click(object sender, EventArgs e)
{
listView1.View = View.List;
} }
求帮忙!谢谢