2 d28905 d28905 于 2016.04.19 11:00 提问

想做一个文档管理系统

语言是winform,服务器端搭建了ftp服务,我现在想法是一个tree view控件,一个list view控件,tree view控件怎么显示服务器目录

3个回答

caozhy
caozhy   Ds   Rxr 2016.04.19 11:12
d28905
d28905 求打什么指导我想把tree view显示的根目录定位到我的电脑上具体的文件夹怎么操作
大约 2 年之前 回复
d28905
d28905 谢谢
2 年多之前 回复
CSDNXIAON
CSDNXIAON   2016.04.19 11:13

文档管理系统解决方案
文档管理系统解决方案
----------------------同志你好,我是CSDN问答机器人小N,奉组织之命为你提供参考答案,编程尚未成功,同志仍需努力!

d28905
d28905   2016.04.20 10:04

public Form1()
{
InitializeComponent();
}

    private void Form1_Load(object sender, EventArgs e)
    {
        treeView1.Nodes.Add(new TreeNode("文档管理系统", DriveInfo.GetDrives()
            .Select(x => new TreeNode(x.Name) { Tag = x }).ToArray()) { Tag = "root" });
    }

    private void treeView1_BeforeExpand(object sender, TreeViewCancelEventArgs e)
    {
        e.Node.Nodes.Cast<TreeNode>().ToList().ForEach(x =>
            {
                try
                {
                    if (x.Nodes.Count == 0)
                    {
                        TreeNode[] nodes = new TreeNode[] { };
                        if (x.Tag.GetType() == typeof(DriveInfo))
                        {
                            var item = x.Tag as DriveInfo;
                            nodes = Directory.GetDirectories(item.Name)
                                .Select(y => new DirectoryInfo(y))
                                .Select(y => new TreeNode(y.Name) { Tag = y })
                                .ToArray();
                        }
                        if (x.Tag.GetType() == typeof(DirectoryInfo))
                        {
                            var item = x.Tag as DirectoryInfo;
                            nodes = Directory.GetDirectories(item.FullName)
                                .Select(y => new DirectoryInfo(y))
                                .Select(y => new TreeNode(y.Name) { Tag = y })
                                .ToArray();
                        }
                        x.Nodes.AddRange(nodes);
                    }
                }
                catch { }
            });
    }

    private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
    {
        if (e.Node.Tag.GetType() == typeof(string) && e.Node.Text == "文档管理系统")
        {
            listView1.Items.AddRange(DriveInfo.GetDrives()
                .Select(x => new ListViewItem(new string[] { x.Name, x.DriveType.ToString(), x.DriveType == DriveType.Fixed ? (x.TotalSize / 1048576 / 1024).ToString() + "GB" : "" }))
                .ToArray());

        }
        if (e.Node.Tag.GetType() == typeof(DriveInfo))
        {
            listView1.Items.Clear();
            listView1.Items.AddRange(Directory.GetDirectories((e.Node.Tag as DriveInfo).Name)
                .Select(x => new DirectoryInfo(x)).OrderBy(x => x.Name)
                .Select(x => new ListViewItem(new string[] { x.Name, "Folder", "", x.CreationTime.ToString()})).ToArray());
            listView1.Items.AddRange(Directory.GetFiles((e.Node.Tag as DriveInfo).Name, "*.*", SearchOption.TopDirectoryOnly)
                .Select(x => new FileInfo(x)).OrderBy(x => x.Name)
                .Select(x => new ListViewItem(new string[] { x.Name, "File", (x.Length / 1024).ToString() + "KB", x.CreationTime.ToString() })).ToArray());
        }
        if (e.Node.Tag.GetType() == typeof(DirectoryInfo))
        {
            listView1.Items.Clear();
            listView1.Items.AddRange(Directory.GetDirectories((e.Node.Tag as DirectoryInfo).FullName)
                .Select(x => new DirectoryInfo(x)).OrderBy(x => x.Name)
                .Select(x => new ListViewItem(new string[] { x.Name, "Folder", "", x.CreationTime.ToString() })).ToArray());
            listView1.Items.AddRange(Directory.GetFiles((e.Node.Tag as DirectoryInfo).FullName, "*.*", SearchOption.TopDirectoryOnly)
                .Select(x => new FileInfo(x)).OrderBy(x => x.Name)
                .Select(x => new ListViewItem(new string[] { x.Name, "File", (x.Length / 1024).ToString() + "KB", x.CreationTime.ToString() })).ToArray());
        }
    }

    private void statusStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e)
    {

    }

    private void listView1_SelectedIndexChanged(object sender, EventArgs e)
    {

    }
}

}

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C#文档管理系统(源码)
文档管理系统 实例文件夹:FileMS。 数据库:采用SQL Server 2000数据库,名称为db_FileMS。 数据库文件位置:FileMS\Database\db_FileMS_Data.MDF和db_FileMS_Data.MDF。 可执行文件位置:\ FileMS\ FileMS \bin\Debug\ FileMS.exe 管理员用户名:mr;密码:mrsoft。
github小项目-本地笔记文件管理系统
项目描述 这是一个很简单的类博客系统,旨在方便管理本地笔记文档,整体采用spring+springmvc+angularjs+bootstrap+markdown实现,主要包括分类、查看、搜索等功能。 项目背景 由于记忆有限,学的东西难免忘记,因此就需要一定的笔记来帮助记忆。 之前基本都是在CSDN用博客,或者有道云笔记,或者直接本地文件系统的文档来充当笔记。 这些方式都有他们的优势...
接口文档管理方案
Restful风格文档管理工具的选择依据: 团队协作修改API接口 生成word、pdf、html等形式的接口文档 可以内线搭建自己的API接口文档管理系统 最好能够内线进行接口的测试工作 文档管理和自动化接口测试方案 方案一、Swagger 方案二、APIDOC + Postman(chrome插件) 方案三、APIDOC + Http Client Swagger官方站点: http://s
用面向对象实现DVD租赁管理
自己编写,个人创作 package DVD_; public class DVD { // DVD类属性: String name; int date; int count; static int sid; int id; String status; // DVD类无參构造方法: DVD(){ } }
企业信息文档管理系统(ASP.NET 2.0+C#)含源码
数据库连接字符串放在项目目录下的Web.config文件中,代码如下所示:<br><appSettings><br><add key="SQLCONNECTIONSTRING" value="data source=zhengyd;uid=sa;pwd=dorient;database=DocumentDB"></add><br></appSettings><br>修改数据库连接字符串,适合本机的数据库配置情况,修改后不需要重新编译项目。<br>
OpenKm 开源文档管理项目安装
前段时间同事被安排做一个文档管理工具,要求开发人员与不是开发的人员都可以查看里面的文档,所以同事搜索就弄了这个, 说实在的这个安装的时候还是碰了很多的坑,(各种缺少jar文件,各种需要vpn访问的资源)。  首先访问官网下载页面:https://www.openkm.com/en/download.html。 然后可以看见两个可供下载的文件 由于Openkm是基于java开发的,所
文档管理系统Excel VBA
通过Excel 自带的VBA制作的文档管理系统,简单实现文档信息增删改、查询等基本功能。
asp.net c#完整的文件管理系统
演示地址:http://www.ifdiamond.cn/qx/index.aspx 本软件大家可以根据自己的需要随便修改。在我们的商业版本中,更加加强了MVC设计模式,并引入框架。功能上增加了文档浏览 功能。几乎重写了全部代码,增加了消息发送;资源交换;资源买卖;资源共享;用flash技术实现文件管理工具,更加人性化等等。 下面是这个版本的简单介绍: 这是我们7个人的劳动成功 请记住:海天奇侠小组 支持文件分类,并给出相应的类型显示 因为上传能力有限,后台不能够上传 如果大家有需要的话,可以给我发邮件:zzcwpf@gmail.com 注意,开发环境是vs2005+SQLServer2005+Ajax控件 里面应该可以找到我们原来的数据字典
基于C# +ASP.NET 实现的开源文档管理门户管理系统源代码
基于C# +ASP.NET 实现的开源文档管理门户管理系统源代码。
搭建公司wiki系统
搭建公司wiki系统-confluence因技术总监要求,在公司研发部门用wiki来管理文档。作为运维,这份差事就落到我头上了。 不知道confluence是什么的可以去官网看看:https://www.atlassian.com/software/confluence