//数据显示,刷新
public void F5()
{
listView1.Items.Clear();
List<Students> Stu = new StudentsData().SeletAll(F1.textBox1.Text);
foreach (Students s in Stu)
{
ListViewItem li = new ListViewItem();
li.Text = s.Ids.ToString();
li.SubItems.Add(s.Code);
li.SubItems.Add(s.Name);
li.SubItems.Add(s.Sexdd);
li.SubItems.Add(s.Age.ToString());
li.SubItems.Add(s.Birthday.ToString("yyyy年MM月dd日"));
li.SubItems.Add(s.Nationna);
li.SubItems.Add(s.ClassNa);
li.SubItems.Add(s.Score.ToString());
listView1.Items.Add(li);
} }

ListView控件是一个winform自带的表格型的应用数据展示控件

好处:是功能比较完善,不需要再自己设置

缺点:不好的地方就是不能设置控件中单元格的大小,字体变大之后超出部分就会隐藏,不能直接输入内容,

要将表中的数据展示出来,需要做到以下几步:

1.先设置好ListView的列名,确定好要展示的的数据有几列

(1)如何设置列名:

点击行为属性Columns,可以设置要设置的列名(text),可以设置很多属性,基本和其他控件一致,如图:

2.查询要展示的表的内容,把这个写成一个方法,方便别的Form调用

//查询所有学生信息
public List<Students> SeletAll(string a)
{
List<Students> Stu = new List<Students>();
cmd.CommandText = "select *from Students where Adm=@a order by Ids asc";
cmd.Parameters.Clear();
cmd.Parameters.AddWithValue("@a", a);
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)
{
while (dr.Read())
{
Students s = new Students();
s.Ids = Convert.ToInt32(dr["Ids"]);
s.Code = dr["Code"].ToString();
s.Name = dr["Name"].ToString();
s.Sex = Convert.ToBoolean(dr["Sex"]);
s.Nation = dr["Nation"].ToString();
s.Birthday = Convert.ToDateTime(dr["Birthday"]);
s.Class = dr["Class"].ToString();
s.Score = Convert.ToInt32(dr["Score"]);
Stu.Add(s);
}
}
conn.Close();
return Stu;
}

3.将数据关联起来

这个写成了一个方法,方便在每次重载时调用,并能保证数据传递后调用刷新的方法

//数据显示,刷新
public void F5()
{
listView1.Items.Clear();
List<Students> Stu = new StudentsData().SeletAll(F1.textBox1.Text);
foreach (Students s in Stu)
{
ListViewItem li = new ListViewItem();
li.Text = s.Ids.ToString();
li.SubItems.Add(s.Code);
li.SubItems.Add(s.Name);
li.SubItems.Add(s.Sexdd);
li.SubItems.Add(s.Age.ToString());
li.SubItems.Add(s.Birthday.ToString("yyyy年MM月dd日"));
li.SubItems.Add(s.Nationna);
li.SubItems.Add(s.ClassNa);
li.SubItems.Add(s.Score.ToString());
listView1.Items.Add(li);
} }

4.获取选中数据的各种操作

(1)一次删除多个信息

if (listView1.CheckedItems.Count <= )
{
MessageBox.Show("请先选中学生信息!");
}
else
{
int count = ;
int Nxx = listView1.CheckedItems.Count;
List<int> Lt = new List<int>();
foreach (ListViewItem li in listView1.CheckedItems)
{
Lt.Add(Convert.ToInt32(li.Text));
}
for (int cxx = ; cxx < Nxx; cxx++)
{
if (new StudentsData().Delete(Lt[cxx], F1.textBox1.Text))
{
count++;
}
}
F5();
MessageBox.Show("学生信息删除成功,本次共删除" + count + "名学生.");
}

winform 公共控件 ListView的更多相关文章

  1. WinForm 公共控件

    一.窗体属性: 1.AcceptButton - 窗体的“接受”按钮.如果设置该属性,每次用户按“Enter”键都相当于“单击”了该按钮. 需要设置哪个键,就在后面选择. 2.CancelButton ...

  2. WinForm公共控件

    公共控件:1.Button:按钮 用户点击时触发事件 行为属性 Enabled -是否启用 Visible -是否隐藏2.CheckBox .CheckListBox - 复选框 复选框组 3.Com ...

  3. 【2017-04-25】winform公共控件、菜单和工具栏、Tab和无边框窗体制作

    一.公共控件 1. Button   按钮 + 布局 - AutoSize   按钮尺寸自动适应里面内容的长度 - Location    位置 - Margin       控件与控件外边距 - S ...

  4. 【2017-04-25】winform公共控件、菜单和工具栏

    一.公共控件 公共控件很多的属性很多都相似,这些是大部分都相同的: +布局 - AutoSize:自动适应控件上文字内容- Location:位置- Margin:控件间的间距- Size:控件大小 ...

  5. WinFrom 公共控件 Listview 的使用

    Listview绑定数据库数据展示与操作使用  1.拖一个Listview控件到项目中先将视图改为Details 2.编辑列 设置列头  添加columnHeader成员 Text 是显示的名称 3. ...

  6. 公共控件Listview

    ListView属性中,Items是行的总集合,Items集合中的每一个是一行,Items集合里面有ListViewItem集合,这个集合实例化:ListViewItem li=new ListVie ...

  7. winform 之控件ListView

    使用ListView构建表格展示数据 1.添加列数据:控件ListView--上方按钮--视图(Details)--编辑列--添加 2.添加行数据:--编辑项(行)--添加 添加数据:Text:默认添 ...

  8. WinForm 公共控件和属性

    Button  按钮 布局 AutoSize 内容超出部分是否扩展到适应尺寸大小 Location  位置坐标 Size   控件大小 行为 Enabled   控件是否启用 visible   控件 ...

  9. WinForm 窗体基本属性、公共控件

    一.WinForm:客户端程序制作 - C/S (B/S:服务器端) 它是基于.NET Framework框架上运行,不是必须在windows系统上才能运行---------------------- ...

随机推荐

  1. [项目部署] CentOs7 安装 MySQL/Tomcat/JDK 笔记

    0.安装 MySQL cd /usr/local/ # 新增yum源 rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-.no ...

  2. .net core结合Consul集群&Docker实现服务治理

    实战中的asp.net core结合Consul集群&Docker实现服务治理 https://www.cnblogs.com/guolianyu/p/9614050.html 0.目录 整体 ...

  3. VS软件版本号定义、规则和相关的Visual Studio插件

    http://blog.csdn.net/cnhk1225/article/details/37500593 软件版本号主要标识了软件的版本,通过其可以了解软件.类库文件的当前版本,使得软件版本控制有 ...

  4. MLCC 电容的的 NP0 C0G 材质

    MLCC 电容的的 NP0 C0G 材质 随手记一下. MLCC 中最稳定的材质 NP0 C0G,NP0 和 C0G 是相同的,只是不同的产商不同的名字而已. 注意中间的是 0 不是 英文字母 O,虽 ...

  5. Filebeat 5.x 日志收集器 安装和配置

    Filebeat 5.x版本 风来了.fox 1.下载和安装 https://www.elastic.co/downloads/beats/filebeat 这里选择 LINUX 64-BIT 即方式 ...

  6. Day1--Python基础1--上半部分

    一.第一个python程序 在linux下创建一个文件叫做hello.py,并输入 print "Hello World" 然后执行命令:python hello.py,输出 [r ...

  7. java的reflection和introspector

    JAVA反射机制是在运行状态中,对于任意一个类,都能够得到这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法:这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制 ...

  8. 数据库:MySQL索引背后的数据结构及算法原理【转】

    原文:http://blog.codinglabs.org/articles/theory-of-mysql-index.html 摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话 ...

  9. Json-lib 进行java与json字符串转换之一

    这篇文章主要介绍了在java中,JSON字符串与java对象的相互转换实例详解,非常不错,具有参考借鉴价值,需要的朋友可以参考下. 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.J ...

  10. 01-19asp.net网站--关于“应用程序中的服务器错误(需添加"Jquery"ScriptRescourseMapping)”

    一般打开网页进行加载时(有缓存),会弹出以下对话框. 但是如果网页加载后出现以下错误,就是应用程序的问题了.如果出现这种问题,就需要在安装Csharp的根目录下,找到一个名为.dll结尾的Jquery ...