winform利用ImageList控件和ListView控件组合制作图片文件浏览器,见图,比较简单,实现LISTVIEW显示文件夹图片功能。

1.选择文件夹功能代码:

            folderBrowserDialog1.SelectedPath = textBox2.Text;
if (this.folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{
if (this.folderBrowserDialog1.SelectedPath.Trim() != "")
textBox2.Text = this.folderBrowserDialog1.SelectedPath.Trim();
}

2.确定按钮代码,当然以下代码也可以写到选择文件夹的浏览按钮中,在此只是为了更能说明问题。

确定按钮实现从选择的文件夹中把图片文件显示到Listview控件中,见代码:

            if (textBox2.Text.Trim() == "") return;

            imageList1.Images.Clear();
listView1.Items.Clear();
imageLists.Clear();
//刷新Listview
bindListView();     //下面是方法
private void bindListView()
{
DirectoryInfo dir = new DirectoryInfo(@textBox2.Text.Trim()); string[] files = new string[100]; string ext = ""; foreach (FileInfo d in dir.GetFiles())
{
ext = System.IO.Path.GetExtension(textBox2.Text.Trim() + d.Name);
if (ext == ".jpg" || ext == ".jpeg") //在此只显示Jpg
{
imageLists.Add(textBox2.Text.Trim() +"\\"+ d.Name);
}
}
for (int i = 0; i < imageLists.Count; i++)
{
imageList1.Images.Add(System.Drawing.Image.FromFile(imageLists[i].ToString()));
listView1.Items.Add(System.IO.Path.GetFileName(imageLists[i].ToString()), i);
listView1.Items[i].ImageIndex = i;
listView1.Items[i].Name = imageLists[i].ToString();
} }

  需要事先要在代码里定义:

List<string> imageLists = new List<string>();

private string path= Application.StartupPath;

需要在窗体增加imageList和listview控件,并把ListView控件的LargeImageList设置为imageList1

  ListView控件显示图片的大小可以在imageList1控件中调整ImageSize属性,如果图片失真,可以设置imageList1控件的ColorDepth值为Depth32Bit.

完成。

  

winform利用ImageList控件和ListView控件组合制作图片文件浏览器的更多相关文章

  1. 利用COM组件IPicture读取jpg、gif、bmp图片文件数据和显示图片

    1.读取图片数据 函数原型:bool LoadImage(const char *pName, unsigned char *pBitData); 函数功能,读取pName指向的图片文件的位图数据 b ...

  2. ListView控件--2016年12月9日

    ListView属性 ListView   名称 说明 AccessKey 重写 WebControl.AccessKey 属性. 不支持将此属性设置 ListView 控件.(覆盖 WebContr ...

  3. 《ASP.NET1200例》ListView控件之修改,删除与添加

    aspx <body> <form id="form1" runat="server"> <div> <asp:Lis ...

  4. 《ASP.NET1200例》ListView 控件与DataPager控件的结合<二>

    ASP.NET使用ListView数据绑定控件和DataPager实现数据分页显示 为什么使用ListView+DataPager的方式实现分页显示? .net提供的诸多数据绑定控件,每一种都有它自己 ...

  5. Winform listview控件、 容器控件

    1.常用的基本属性: (1)FullRowSelect:设置是否行选择模式.(默认为false) 提示:只有在Details视图该属性才有意义. (2) GridLines:设置行和列之间是否显示网格 ...

  6. winform listview控件

    ListView控件 1.常用的基本属性: (1)FullRowSelect:设置是否行选择模式.(默认为false) 提示:只有在Details视图该属性才有意义. (2) GridLines:设置 ...

  7. C# winform项目中ListView控件使用CheckBoxes属性实现单选功能

    C# winform项目中ListView控件使用CheckBoxes属性实现单选功能 在做项目时需要使用ListView控件的CheckBoxes属性显示,还要在点击行时自动选中CheckBoxes ...

  8. WinForm 之 使用ListView控件展示数据

    在学习了这么多的WinForm基本控件后,今天在来学习一个比较有意思的包含图片的控件! >>>图像列表控件 ImageList是含有图像对象的集合,可以通过索引或关键字引用该集合中的 ...

  9. 陈年佳酿之 - Winform ListView 控件 double click 事件中获取选中的row与column

    背景 最近收到了一个关于以前项目的维护请求,那时的楼主还是刚刚工作的小青年~~~ 项目之前使用的是.net/winform.今天重新打开代码,看着之前在FrameWork2.0下面的代码, 满满的回忆 ...

随机推荐

  1. c/c++中int main(int argc,char *argv[])的具体含义

    int main(int argc,char * argv[ ]) argv为指针的指针 argc为整数 char **argv or: char *argv[ ] or: char argv[ ][ ...

  2. NOIP 竞赛注意事项

    <一>程序习惯注意 一.Linux与Windows的区别 a) 大小写敏感 i.   在Windows下,文件名大小写不敏感,例如A.c 与 a.c 与和a.C与A.C和没有区别. ii. ...

  3. 20172309 《Java软件结构与数据结构》实验三报告

    课程:<程序设计与数据结构(下)> 班级:1723 姓名: 王志伟 学号:20172309 实验教师:王志强老师 实验日期:2018年11月2日 必修/选修: 必修 实验内容: 实验一: ...

  4. eclipse中出现的一些错误

    selection dose not contain a main type解决办法:main忘记加static

  5. ROS知识(24)——ros::spin()和spinOnce的含义及其区别

    1.ros::spin()和spinOnce含义 如果在节点中如果订阅了话题,那么就必须要调用ros::sping()或者ros::spinOnce()函数去处理话题绑定的回调函数,否则该节点将不会调 ...

  6. Java知识回顾 (6)正则表达式、方法、文件与异常

    一.正则表达式 正则表达式定义了字符串的模式. 正则表达式可以用来搜索.编辑或处理文本. 正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别. Java 正则表达式和 Perl 的是最为相似 ...

  7. Date与Quartz的cron之间的相互转换

    1.概述 最近在写一个Quartz相关的模块,需要实现Date与Quartz的cron之间的相互转换,在网上查了一下竟然没有找到,但是找到一份这样的博客:http://hw1287789687.ite ...

  8. 后台任务hangfire

    Installation¶ There are a couple of packages for Hangfire available on NuGet. To install Hangfire in ...

  9. 【Java】MyBatis与Spring框架整合(一)

    本文将利用 Spring 对 MyBatis 进行整合,在对组件实现解耦的同时,还能使 MyBatis 框架的使用变得更加方便和简单. 整合思路 作为 Bean 容器,Spring 框架提供了 IoC ...

  10. <转>详解C++的模板中typename关键字的用法

    用处1, 用在模板定义里, 标明其后的模板参数是类型参数. 例如: template<typename T, typename Y> T foo(const T& t, const ...