C# 系统应用之ListView控件 (二).加载选中节点文件夹下文件信息
来源:互联网 发布:开票软件双击打不开 编辑:程序博客网 时间:2024/06/06 14:08
本文转载连接: http://blog.csdn.net/eastmount/article/details/21241313
在项目中的前面一篇文章"C# 系统应用之TreeView控件 (一).显示树状磁盘文件目录及加载图标"中我讲述了如何使用TreeView控件树状实现显示"我的电脑"所有磁盘路径下的文件夹,并加载图标如下图所示.
此篇文章我需要讲述的是当鼠标点击左边的TreeView控件中的文件夹时,如何实现在右边的ListView控件中显示相应的文件,并显示文件的名称、大小、类型属性.主要运用的知识是如何实现ListView显示信息,Subitems()函数增加子项,如何设置列表头等信息.运行结果如下图所示:
一.Load函数中加载ListView列标题头
在前篇文章基础上,把控件filesList(ListView控件)拉长,并设置Form1的属性FormBorderStyle(窗体边框和标题栏外观)为FixedSingle,此时该窗体不能拖动拉长.通过Form1_Load()函数初始加载ListView的标题头(名称、大小、类型).代码如下:
二.AfterSelect事件实现ListView加载数据
现在需要在"解决方案"中点击directoryTree(TreeView控件,左边的树状图控件)添加AfterSelect事件,当选中某个节点后,通过该事件显示该文件夹下的所有文件信息.代码如下:
三.遇到的问题
这篇文章看似简单,其实过程遇到很多问题还是值得学习的.
1.遇到的第一个问题就是为什么使用ListView控件总是只显示第一列数据呢?为什么设置了列标题Columns没有显示出来呢?
因为我在程序中初始化后又添加一段代码filesList.View = View.List;设置了View显示的视图为List.而View属性包括五种显示方式:Details(详细信息)、List(列表)、LargeIcon(大图标)、SmallIcon(小图标)、Tile.默认时LargeIcon此时显示为乱序,如果想显示详细信息一行一行的需要设置为Details.
这里推荐大家阅读夜之子的"C# ListView用法详解",真心神作!此处引用他文章中的4张图区别View不同属性显示情况.
2.遇到的第二个问题主要是如何添加数据?如何添加列标题头?
可以采用listItem.SubItems[0].Text添加,但是listItem.SubItems[1]时会报错"InvalidArgument="1"的值对于"Index"无效.参数:index".估计原因是tem没有填入123,所以我采用的方法是listItem.SubItems.Add添加.
3.使用"this.filesList.BeginUpdate()"和"this.filesList.EndUpdate()"数据更新时UI暂时挂起直到EndUpdate绘制控件,可以有效避免闪烁并大大提高加载速度.否则由于加载数据较大时会出现闪烁或空白遮挡等问题.
四.总结
最后希望该文章对大家有所帮助,感谢上面提到的文章及作者.同时如果文章中有错误或不足之处请原谅,有问题或建议者亦可提出.希望尊重作者劳动果实.接下来想实现的是使用API函数添加文件图标和实现右键打开文件和删除文件的操作.仅以此篇文章纪念自己在CSDN发表50篇博客.
文件免费下载地址:http://download.csdn.net/detail/eastmount/7041767
MFC实现该功能类似文章:http://blog.csdn.net/eastmount/article/details/19120567
(By:Eastmount 2014-3-14 下午6点 原创CSDNhttp://blog.csdn.net/eastmount/)
- C# 系统应用之ListView控件 (二).加载选中节点文件夹下文件信息
- C# 系统应用之ListView控件 (二).加载选中节点文件夹下文件信息
- C# ListView选中行事件
- C#中得到文件夹下文件
- C#中得到文件夹下文件
- Linux 系统下文件信息的查询
- Linux 系统下文件信息的查询
- android Listview 中显示/mnt下文件和文件夹
- 遍历文件夹下文件
- 遍历文件夹下文件
- 遍历文件夹下文件
- 《C#入门到精通》学习笔记 -- Debug文件夹下文件
- C# 读取文件夹下文件,按照名字排序
- Linux系统下文件和文件夹的复制问题
- linux系统中统计文件夹下文件个数
- C# 系统应用之ListView控件 (三).添加ContextMenuStrip右键菜单打开删除文件
- c# winform项目treeview控件绑定本地电脑磁盘信息,读取文件夹信息,显示文件夹内文件内容
- c# winform项目treeview控件绑定本地电脑磁盘信息,读取文件夹信息,显示文件夹内文件内容
- 二维点云数据椭圆拟合算法及C++实现
- 关于java Web的基础各种配置
- caffe运行yolo-tiny记录
- 欢迎使用CSDN-markdown编辑器
- POJ 2255 Tree Recovery 二叉树
- C# 系统应用之ListView控件 (二).加载选中节点文件夹下文件信息
- ES5 Object methods
- Spring Boot 入门知识
- java-接口/内部类/代理
- leetcode--Word Search
- 集合类型
- NYOJ 891 找点【贪心算法】
- Common Subsequence
- [Leetcode] 341. Flatten Nested List Iterator 解题报告