C#本人菜鸟,想在窗体中放一个treeview,然后在这个中添加链接,链接到文件夹,然后将文件显示在listview中显示文件夹的里面的文件,如果文件夹里还是文件夹的话,双机这个文件名,在listview中就显示子文件夹里面的内容,并可以打开文件,谢谢大侠们!!
这是我试验的一个简单的程序,因为读出内容一般是文本什么的,做了点过滤,listview里只显示了txt,和word文件,当然你可以改,你要过滤的文件,希望可以帮到你
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//加载驱动器目录
public void loadtVDirectory()
{
DriveInfo[] di = DriveInfo.GetDrives();
foreach(DriveInfo driver in di)
{
TreeNode tnode = new TreeNode(driver.Name);
if(driver.IsReady)
{
tnode.ToolTipText = driver.TotalSize.ToString();
tVDirectorys.Nodes.Add(tnode); //左侧treeview 控件添加借点
loadDirectory(Path.GetFullPath(tnode.Text),tnode);
}
}
}
// 加载指定目录下的文件目录
public void loadDirectory(string path,TreeNode tNode)
{
string[] directorys = Directory.GetDirectories(path); //获取选中treeview节点的子目录
foreach (string item in directorys)
{
if ((File.GetAttributes(item) & FileAttributes.Hidden)!= FileAttributes.Hidden)
{
TreeNode tnode = new TreeNode(Path.GetFileName(item));
//tNode.Nodes.Add(tnode);
tnode.Name = item;
tnode.ToolTipText = "文件夹" + item;
tNode.Nodes.Add(tnode); //选中节点添加子节点
}
}
}
//加载指定目录下的文本文件和word文档
public void loadlVFile(string path)
{
if (path.Contains("System Volume Information"))
{
return;
}
string[] files = Directory.GetFiles(path);
lVFile.Clear();
foreach (string item in files)
{
string eName = Path.GetExtension(item);
if(eName==".txt"||eName==".doc") //这里我只在listview里面显示文本和word文件
{
lVFile.Items.Add(item);
}
}
lVFile.View = View.List; //设置listview的现实形式
}
//激活选择的文件时,将内容加载到rTBShowFile中
private void lVFile_ItemActivate(object sender, EventArgs e) //点击Listview中得项目,显示内容
{
if (lVFile.SelectedItems.Count > 0)
{
. LoadFile(lVFile.SelectedItems[0].Text,RichTextBoxStreamType.PlainText);
this.Text = Path.GetFileName(lVFile.SelectedItems[0].Text);
}
}
private void Form1_Load(object sender, EventArgs e)
{
loadtVDirectory();
}
private void tVDirectorys_AfterExpand(object sender, TreeViewEventArgs e)
{
foreach(TreeNode tnode in e.Node.Nodes)
{
tnode.Nodes.Clear();
loadDirectory(tnode.Name,tnode);
}
}
private void tVDirectorys_AfterSelect(object sender, TreeViewEventArgs e)
{
loadlVFile(e.Node.FullPath);
}
}
C#本人菜鸟,想在窗体中放一个treeview,然后在这个中添加链接,链接到文 ...
private void tVDirectorys_AfterSelect(object sender, TreeViewEventArgs e){
c#的winform TreeView控件中,展开不同的节点,右边显示不同的内容,该...
可以通过TreeView控件的Items属性添加和删除它的子节点,Items属性的每个元素都是object类型,所以可以包含任意类型的元素,TreeView在显示时会自动通过元素的ToString()方法获取要显示的文本。在这一点上TreeViewItem和TreeView是完全一致的。TreeView控件不包含节点展开和收拢事件(这和Win Form窗体中的Tree控件不同),它包...
如何在C#中如何把一个类放在不同文件中
建两个不同的文件夹,然后用名称空间直接引用就行了
...用户使用这个链接再下载文档。链接如何实现?
比较好的办法是在服务器端建立一个download.aspx页面,在该页面里根据传入的参数进行不同的下载,然后发给用户的地址就如下:http:\/\/110.2.2.2\/download.aspx?id=20160721105831 \/\/注意把IP地址改为实际IP地址,这样当用户点击该链接时,就能自动下载文档了。当然,还要在download.aspx.cs中写些代码...
C#中怎样在窗体打开的时候执行一个动作例如button1_Click
【例1】打开窗体时,模拟鼠标点击命令按钮 using System;using System.Windows.Forms;namespace WindowsFormsApplication1{ public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { \/\/直接...
如何用C#在一个窗体中画一个矩形
在form的paint中画,用事件里传入的e里面的graphics就直接可以画了
C#中如何在点击一个按钮后,生成新窗口?
在窗口上面从工具箱中拖一个Button按钮上去,然后添加一个对话框(名字为OPEN)到资源管理器中去,然后双击窗口上面的Button按钮,在生产的函数体里面写如下代码就行了:OPEN o=new OPEN();o.showDialog();然后你运行是,双击就会弹出你新建的这个OPEN对话框,挺简单的,加油!
求!!!C#怎样在下一个窗口得到上一窗口的内容,比如说“用户名”_百度知...
1.新建Form1和Form2 2.在Form1中添加一个textBox1和一个Button1 3.在Form1的中申明一个静态变量:public static string UserName;4.然后在Button的Click事件里面写代码:private void button1_Click(object sender, EventArgs e){ UserName = textBox1.Text;Form2 f2 = new Form2();f2.Show();...
C# 网站调用 插件链接一个读卡器,实现网页读卡写卡操作
采用插入object方式只能使用与IE浏览器,建议采用友我科技RFID读写器云服务技术。不仅适用于IE,还支持Chrome,Firfox,safari,Opera等各种主流的浏览器,开发起来也很简单,支持的IC卡读卡器有YW-607和YW-605HA等等。RFID读写器云服务开发指南
菜鸟求助PHP字符替换的问题
那位高手能把下面这个java程序改进一下 不论在什么方面 做一些改良!! 谁知道在C++ BUILDER里面怎么去掉即时帮助吗?(输入代码时,它自动会给出一些代码的参数什么的!) 请教用DELPHI制作一个查询学校学生成绩的数据库系统该先具备些什么条件? 我下载了两个echangserer2000都是解压倒一定时候是就出错然后就不能进行了...