首页 > 作文

详解C# winform ListView的基本操作

更新时间:2023-04-04 19:31:37 阅读: 评论:0

组图的加载与导入

图片存放的相对路径/ 与exe存放在一个文件夹

为界面添加图片组–组件

图片下载路径
链接:

 // 组图的加载与导入 dictionary<int, string> dic = new dictionary<int, string>(); // 保存 序号--文件路径 private void loadimglist() {     string imgpath = @".\img"; // 文件夹路径     if (directory.exists(imgpath)==fal)     {         debug.writeline("图片文件夹不存在");         return;     }     // 获取图片路径列表     string[] files = directory.getfiles(imgpath);     if (files.length <= 0)      {         debug.writeline("图片不存在");         return;     }     this.largelist.images.clear();     this.smalllist.images.clear();     int index = 0;     // 判断文件后缀,读取图片,设置图片     string[] filetype = { ".jpg", ".png" };     foreach (string fpath in files)     {         // 判断文件后缀         if (filetype.contains(path.getextension(fpath)))          {             image img = image.fromfile(fpath);             string keyname = path.getfilenamewithoutextension(fpath);             // 设置图片             this.largelist.images.add(keyname, img);             this.smalllist.images.add(keyname, img);             // 保存索引与图片路径             dic.add(index, fpath);             index++;         }     }     // 设置图片大小     this.largelist.imagesize = new size(50, 50);     this.smalllist.imagesize = new size(20, 20); }

为listview添加内容

 private void tdetailsdata() {     // 清空列表     lvlist.columns.clear();     lvlist.items.clear();     // 设置模式     lvlist.view = view.details; // 设置详细视图     // 列的添加     lvlist.columns.add("文件名", 100, horizontalalignment.left);     lvlist.columns.add("创建日期", 150, horizontalalignment.left);     lvlist.columns.add("类型", 80, horizontalalignment.left);     lvlist.columns.add("大小", 60, horizontalalignment.left);     // item 的添加     for (int i = 0; i < dic.count; i++)     {         li新疆财经大学商务学院stviewitem li = new listviewitem();         li.imageindex = i; //设置图片序号         // 设置文件名         li.text = smalllist.images.keys[i];         li.subitems.add(file.getcreationtime(dic[i]).tostring()); // 创建时间         li.subitems.add(path.getextension(dic[i]).tostring()); // 类型         long length = new fileinfo(dic[i]).length; // 大小         li.subitems.add((length / 1024).tostring());         lvlist.items.add(li);     } }

listview 初始化设置与加载

 private void form1_load(object nder, eventargs e) {     // 显示是否分组显示     this.lvlist.showgroups = fal;     if (this.largelist == null || this.largelist.images.count <= 0)     {         return;     }     this.tdetailsdata(); // 设置数据     this.tlistgroup(); // 设置列表分组     this.titemgroup(); // 设置item所属组     lvlist.gridlines = true;     lvlist.view = view.largeicon; // 设置显示模式--为大图模式     lvlist.largeimagelist = this.largelist;//关联大图标列表     lvlist.smallimagelist = this.smalllist;// 关联小图标列表 }

分组设置

// 为列表设置分组设置, dictionary<string, string> dict = new dictionary<string, string>(); // 记录分组名与包含字符串private void tlistgroup(){    // 添加组    lvlist.groups.clear();    lvlist.groups.add(new listviewgroup("花", horizontalalignment.center));    lvlist.groups.add(new listviewgroup("动物", horizontalalignment.center));    lvlist.groups.add(new listviewgroup("人物", horizontalalignment.center));    lvlist.groups.add(new listviewgroup("风景", horizontalalignment.center));    dict.add("花", "04");    dict.add("动物", "01");    dict.add("人物", "02");    dict.add("风景", "03");}// 设置item 所属分组private void titemgroup(){    // 判断每一项进行分组    for (int i = 0; i < lvlist.items.count; i++)    {        foreach (listviewgroup lvg in lvlist.groups)        {            if (lvlist.items[i].text.substring(0, 2) == dict[lvg.header])            {                lvlist.items[i].group = lvg;                break;            }        }    }}

完整代码

using system;using system.collections.generic;using system.componentmodel;using system.data;using system.dr射手 字幕awing;using system.io;using system.linq;using system.text;using system.threading.tasks;using system.windows.forms;using system.diagnostics;namespace listviewst{    public partial class form1 : form    {        public form1()        {            initializecomponent();            this.loadimglist();        }        // 组图的加载与导入        dictionary<int, string> dic = new dictionary<int, string>(); // 保存 序号--文件路径        private void loadimglist()        {            string imgpath = @".\img"; // 文件夹路径            if (directory.exists(imgpath) == fal)            {                debug.writeline("图片文件夹不存在");                return;            }            // 获取图片路径列表            string[] files = directory.getfiles(imgpath);            if (files.length <= 0)            {                debug.writeline("图片不存在");                return;三年级课外阅读推荐书目            }            this.largelist.images.clear();            this.smalllist.images.clear();            int index = 0;            // 判断文件后缀,读取图片,设置图片            string[] filetype = { ".jpg", ".png" };            foreach (string fpath in files)            {                // 判断文件后缀                if (filetype.contains(path.getextension(fpath)))                {                    image img = image.fromfile(fpath);                    string keyname = path.getfilenamewithoutextension(fpath);                    // 设置图片                    this.largelist.images.add(keyname, img);                    this.smalllist.images.add(keyname, img);                    // 保存索引与图片路径                    dic.add(index, fpath);                    index++;                }            }            /最近我的妹妹有点怪/ 设置图片大小            this.largelist.imagesize = new size(50, 50);            this.smalllist.imagesize = new size(20, 20);        }        private void form1_load(object nder, eventargs e)        {            // 显示是否分组显示            this.lvlist.showgroups = fal;            if (this.largelist == null || this.largelist.images.count <= 0)            {                return;            }            this.tdetailsdata(); // 设置数据            this.tlistgroup(); // 设置列表分组            this.titemgroup(); // 设置item所属组            lvlist.gridlines = true;            lvlist.view = view.largeicon; // 设置显示模式--为大图模式            lvlist.largeimagelist = this.largelist;//关联大图标列表            lvlist.smallimagelist = this.smalllist;// 关联小图标列表        }        // 大图标视图        private void btnlarge_click(object nder, eventargs e)        {            this.lvlist.view = view.largeicon;        }        // 小图标视图        private void btnsmall_click(object nder, eventargs e)        {            this.lvlist.view = view.smallicon;        }        // 列表视图        private void btnlist_click(object nder, eventargs e)        {            this.lvlist.view = view.list;        }        // tile 视图 图标使用大图标        private void btntile_cli十万个为什么读后感ck(object nder, eventargs e)        {            this.lvlist.view = view.tile;        }        // 详细信息视图 列        private void btndetail_click(object nder, eventargs e)        {            lvlist.view = view.details; // 设置详细视图        }        // 添加item列表        private void tdetailsdata()        {            // 清空列表            lvlist.columns.clear();            lvlist.items.clear();            // 设置模式            lvlist.view = view.details; // 设置详细视图            // 列的添加            lvlist.columns.add("文件名", 100, horizontalalignment.left);            lvlist.columns.add("创建日期", 150, horizontalalignment.left);            lvlist.columns.add("类型", 80, horizontalalignment.left);            lvlist.columns.add("大小", 60, horizontalalignment.left);            // item 的添加            for (int i = 0; i < dic.count; i++)            {                listviewitem li = new listviewitem();                li.imageindex = i; //设置图片序号                // 设置文件名                li.text = smalllist.images.keys[i];                li.subitems.add(file.getcreationtime(dic[i]).tostring()); // 创建时间                li.subitems.add(path.getextension(dic[i]).tostring()); // 类型                long length = new fileinfo(dic[i]).length; // 大小                li.subitems.add((length / 1024).tostring());                lvlist.items.add(li);            }        }        // 为列表设置分组设置,         dictionary<string, string> dict = new dictionary<string, string>(); // 记录分组名与包含字符串        private void tlistgroup()        {            // 添加组            lvlist.groups.clear();            lvlist.groups.add(new listviewgroup("花", horizontalalignment.center));            lvlist.groups.add(new listviewgroup("动物", horizontalalignment.center));            lvlist.groups.add(new listviewgroup("人物", horizontalalignment.center));            lvlist.groups.add(new listviewgroup("风景", horizontalalignment.center));            dict.add("花", "04");            dict.add("动物", "01");            dict.add("人物", "02");            dict.add("风景", "03");        }        // 设置item 所属分组        private void titemgroup()        {            // 判断每一项进行分组            for (int i = 0; i < lvlist.items.count; i++)            {                foreach (listviewgroup lvg in lvlist.groups)                {                    if (lvlist.items[i].text.substring(0, 2) == dict[lvg.header])                    {                        lvlist.items[i].group = lvg;                        break;                    }                }            }        }        // 以分组形式显示        private void btngroupshow_click(object nder, eventargs e)        {            lvlist.showgroups = true;            this.tdetailsdata();            this.titemgroup();        }    }}

大图标模式显示

tile模式 显示

分组显示

到此这篇关于详解c# winform listview的基本操作的文章就介绍到这了,更多相关c# winform listview内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!

本文发布于:2023-04-04 19:31:35,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/d1db505708428fe017e338f92089a737.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:详解C# winform ListView的基本操作.doc

本文 PDF 下载地址:详解C# winform ListView的基本操作.pdf

下一篇:返回列表
标签:图片   列表   路径   视图
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图