C#-WinForm-ListView-表格式展示数据、如何将数据库中的数据展示到ListView中、如何对选中的项进行修改
在展示数据库中不知道数量的数据时怎么展示最好呢?——表格
ListView - 表格形式展示数据
ListView 常用属性
HeaderStyle - “详细信息”视图中列标头的样式。
None - 不显示列标头
Nonclickable - 不可点击
Clickable - 可点击
HideSelection - 当控件没有焦点时,移除选定项的突出显示。
MultiSelect - 允许选择多项 (True/False)。
CheckBoxes - 指示复选框是否显示在项旁边。
FullRowSelect - 指示当项被选中时,其所有子项是否同该项一起突出显示。
GridLines - 在项和子项周围显示网格线。仅在“详细信息”视图中显示。
View - 选择可以显示项的不同视图中的一种。
==========================================================
一、设置表的列头 - Columns集合,添加5个列,设置text,按需要设置TextAlign和Width属性
(第一列TextAlign属性只能是Left,不能居中。如何让第一列居中?数据从第二列开始展示,让第一列宽度为0)
二、设置View属性为 Details(细节),此时即可以显示列名
三、展示数据 - ListView属性中Items集合属性
点击<添加>按钮,添加的是一整行,其中text值为第一列的值。如何添加行中其他数据?打开Items时有一个SubItems集合属性,添加列并设置text值
======================================================
如何将数据库中的数据展示在ListView中?(李献策lxc)
//<刷新>按钮
private void button1_Click(object sender, EventArgs e)
{
List<Users> lu = new List<Users>();
lu = ud.Select();//从数据库中查询数据
//★★★遍历泛型集合前先清除ListView.Items中的数据,以免每次点击刷新时,都会将数据库中数据放入泛型集合中,使泛型集合重复添加元素,越来越大
listView1.Items.Clear();
//★★★
foreach (Users u in lu)//遍历查询出来的数据
{
ListViewItem lv = new ListViewItem();
lv.Text = u.Username;//设置第一行显示的数据
//绑定剩余列的数据
lv.SubItems.Add(u.Password);
lv.SubItems.Add(u.Nickname);
lv.SubItems.Add(u.Sex?"男":"女");
lv.SubItems.Add(u.Birthday.ToLongDateString());
lv.SubItems.Add(u.Nation);
lv.SubItems.Add(u.Class);
//一定记得行数据创建完毕后添加到列表中
listView1.Items.Add(lv);
}
}
刷新按钮
=======================================================
如何对选中的项进行展示?
在上图中,既有选中的行,又有选中的复选框,点击<获取选项>如何把选中的项的用户名和性别展示出来呢?
一、对于选中的行 -
private void button5_Click(object sender, EventArgs e)
{
foreach (ListViewItem lv in listView1.SelectedItems )
{
MessageBox.Show(lv.Text+"\t"+lv.SubItems[].Text); }
}
展示选中的行的信息
二、对于选中的复选框
//<获取选中>按钮
private void button5_Click(object sender, EventArgs e)
{
foreach (ListViewItem lv in listView1.CheckedItems)
{
MessageBox.Show(lv.Text + "\t" + lv.SubItems[].Text); }
}
展示选中的复选框的信息
=============================================================
C#-WinForm-ListView-表格式展示数据、如何将数据库中的数据展示到ListView中、如何对选中的项进行修改的更多相关文章
- ebay商品基本属性组合成数据表格式,可用上传到系统递交数据
该刊登表设计是利用VB写的,当时因为两个系统的数据不能直接对接,又copy并且组合SKU,一个表格一个表格填写,比较麻烦,还好刊登系统可以允许用excel表格上传数据 所以就下好模板,学了VB语言,在 ...
- Java使用iBatis批量插入数据到Oracle数据库
Java使用iBatis批量插入数据到Oracle数据库 因为我们的数据跨库(mysql,oracle),单独取数据的话需要遍历好多遍,所以就想着先从mysql数据库中取出来的数据然后在oracle数 ...
- DataTable to Excel(使用NPOI、EPPlus将数据表中的数据读取到excel格式内存中)
/// <summary> /// DataTable to Excel(将数据表中的数据读取到excel格式内存中) /// </summary> /// <param ...
- python打印表格式数据,留出正确的空格和段落星号或注释
python打印表格式数据,留出正确的空格,格式化打出 代码如下: def printPicnic(itemsDict,leftWidth,rightWidth): print('PICNIC ITE ...
- python打印表格式数据-星号或注释
python打印表格式数据,留出正确的空格,格式化打出 代码如下: def printPicnic(itemsDict,leftWidth,rightWidth): print('PICNIC ITE ...
- 数据库中取出YYYY-mm-dd H:i:s的数据怎么将其转化成YYYY/mm/dd格式,另外,怎么将一个数据表中的数据插入另一个数据表
sql语句是select left(replace(rq,'-','/'),10) as rq from 表名 tp5.1中的写法 $res = Db::table('表名') ->field ...
- 利用Shell脚本将MySQL表中的数据转化为json格式
脚本如下: #!/bin/bash mysql -s -phello test >.log <<EOF desc t1; EOF lines="concat_ws(',', ...
- 【数据传输 2】批量导入的前奏:将Excel表中的数据转换为DataTable类型
导读:我们知道,在数据库中,数据集DataSet是由多张DataTable表组成.所以,如果我们需要将数据从外部导入到数据库中,那么要做的很重要的一步是将这些数据转换为数据库可以接受的结构.今天在用S ...
- Elasticsearch:如何把Elasticsearch中的数据导出为CSV格式的文件
本教程向您展示如何将数据从Elasticsearch导出到CSV文件. 想象一下,您想要在Excel中打开一些Elasticsearch中的数据,并根据这些数据创建数据透视表. 这只是一个用例,其中将 ...
随机推荐
- java 22 - 3 多线程的概述以及其它所涉及的东西(看)
1:要想了解多线程,必须先了解线程,而要想了解线程,必须先了解进程,因为线程是依赖于进程而存在. 2:什么是进程? 通过任务管理器我们就看到了进程的存在. 而通过观察,就可以发现只有运行的程序才会出现 ...
- javascript的几个小技巧
1.在循环中缓存array.length 这个技巧很简单,这个在处理一个很大的数组循环时,对性能影响将是非常大的.基本上,大家都会写一个这样的同步迭代的数组. for(var i=0;i<arr ...
- iOS中的存储方式
1.Plist 1.1 了解沙盒 每个iOS应用都有自己的应用沙盒(应用沙盒就是文件系统目录),与其它文件系统隔离.应用必须呆在自己的沙盒里.其它应用不能访问该沙盒. 一个程序中所有的非代码文件都可以 ...
- 修复ext4日志(jbd2)bug( Ext4 文件系统有以下 Bug)
from:http://blog.donghao.org/2013/03/20/%E4%BF%AE%E5%A4%8Dext4%E6%97%A5%E5%BF%97%EF%BC%88jbd2%EF%BC% ...
- mysql下mysqladmin日常管理命令总结
mysqladmin 工具的使用格式:mysqladmin [option] command [command option] command ......参数选项:-c number 自动运行次数统 ...
- Python的高级特性6:使用__slots__真的能省很多内存
在伯乐在线上看到了这篇文章,用Python的 __slots__ 节省9G内存,于是想测试下,对单个类,用__slots__节省内存效果会不会明显. 看完这个例子后,我们也会明白__slots__是用 ...
- MySQL与MongoDB的操作对比,以及区别
MySQL与MongoDB都是开源的常用数据库,但是MySQL是传统的关系型数据库,MongoDB则是非关系型数据库,也叫文档型数据库,是一种NoSQL的数据库.它们各有各的优点,关键是看用在什么地方 ...
- BZOJ 3669 【NOI2014】 魔法森林
Description 为了得到书法大家的真传,小E同学下定决心去拜访住在魔法森林中的隐士.魔法森林可以被看成一个包含个N节点M条边的无向图,节点标号为1..N,边标号为1..M.初始时小E同学在号节 ...
- 大圆满的精髓–肯•威尔伯(KEN WILBER)
作者:肯·威尔伯(Ken Wilber),目前被公认为是“后人本心理学”的最重要的思想家.理论家和发言人,其影响已经跨越了心理学领域,波及哲学和神学领域.由于肯·威尔伯在意识领域的研究极富基础性和开创 ...
- crontab 定时任务
1 linux 系统需要安装crontab ;yum install vixie-cron crontabs 2 编写shell 脚本, save_dir=/var/local/mysqlbak/Ne ...