用LisView控件在窗体中创建一个表,设置一个按钮,点击按钮,

将数据库中的表在这个控件中显示(LisView控件中表格式列名与数据库中一致)

首先使用控件将表的每一列创建好,加入一个按钮,如图,现在要在按钮的点击事件中实现数据库内容显示

备注:ListView中,可以单个或者多个点击选择出一条信息,将属性外观中FullRowSelect改为true,获取点击的值用listView1(ListView控件的Name).SelectedItems

先创建一个实体类:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text; namespace 容器控件
{
class Student//这是数据库表中的每一列
{
public string Code { get; set; }
public string Name { get; set; }
public bool Sex { get; set; }
public DateTime Birthday { get; set; }
public decimal Score { get; set; } }
}

然后在按钮点击事件中写方法:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient; namespace 容器控件
{
public partial class Form2 : Form
{
SqlConnection conn = null;//开启数据库连接操作
SqlCommand cmd = null; public Form2()
{
InitializeComponent(); conn = new SqlConnection("server=.;database=Data0425;user=sa;pwd=123;");
cmd = conn.CreateCommand();
} private void button1_Click(object sender, EventArgs e)
{
List<Student> list = new List<Student>();//将创建的实体类放入泛型集合
cmd.CommandText = "select *from Student";//数据库信息查询 conn.Open();
SqlDataReader dr = cmd.ExecuteReader();
if (dr.HasRows)//判断查询到数据,将每一条数据循环添加进泛型集合
{
while (dr.Read())
{
Student s = new Student();
s.Code = dr[].ToString();
s.Name = dr[].ToString();
s.Sex = Convert.ToBoolean(dr[]);
s.Birthday = Convert.ToDateTime(dr[]);
s.Score = Convert.ToDecimal(dr[]); list.Add(s);
}
}
conn.Close(); //如何把泛型集合信息放进ListView中
foreach (Student s in list)//遍历集合
{
ListViewItem li = new ListViewItem();//实例化一下ListView的集合Item
li.Text = s.Code;
li.SubItems.Add(s.Name);
li.SubItems.Add(s.Sex.ToString());
li.SubItems.Add(s.Birthday.ToString());
li.SubItems.Add(s.Score.ToString());
//将泛型集合的每一条每一项逐个添加到ListViewItem集合中
listView1.Items.Add(li);
}
}
}
}

LisView控件的更多相关文章

  1. JS调用Android、Ios原生控件

    在上一篇博客中已经和大家聊了,关于JS与Android.Ios原生控件之间相互通信的详细代码实现,今天我们一起聊一下JS调用Android.Ios通信的相同点和不同点,以便帮助我们在进行混合式开发时, ...

  2. HTML5 progress和meter控件

    在HTML5中,新增了progress和meter控件.progress控件为进度条控件,可表示任务的进度,如Windows系统中软件的安装.文件的复制等场景的进度.meter控件为计量条控件,表示某 ...

  3. 百度 flash html5自切换 多文件异步上传控件webuploader基本用法

    双核浏览器下在chrome内核中使用uploadify总有302问题,也不知道如何修复,之所以喜欢360浏览器是因为帮客户控制渲染内核: 若页面需默认用极速核,增加标签:<meta name=& ...

  4. JS与APP原生控件交互

    "热更新"."热部署"相信对于混合式开发的童鞋一定不陌生,那么APP怎么避免每次升级都要在APP应用商店发布呢?这里就用到了混合式开发的概念,对于电商网站尤其显 ...

  5. UWP开发必备:常用数据列表控件汇总比较

    今天是想通过实例将UWP开发常用的数据列表做汇总比较,作为以后项目开发参考.UWP开发必备知识点总结请参照[UWP开发必备以及常用知识点总结]. 本次主要讨论以下控件: GridView:用于显示数据 ...

  6. 【踩坑速记】开源日历控件,顺便全面解析开源库打包发布到Bintray/Jcenter全过程(新),让开源更简单~

    一.写在前面 自使用android studio开始,就被它独特的依赖方式:compile 'com.android.support:appcompat-v7:25.0.1'所深深吸引,自从有了它,麻 ...

  7. 对百度WebUploader开源上传控件的二次封装,精简前端代码(两句代码搞定上传)

    前言 首先声明一下,我这个是对WebUploader开源上传控件的二次封装,底层还是WebUploader实现的,只是为了更简洁的使用他而已. 下面先介绍一下WebUploader 简介: WebUp ...

  8. Windows API 设置窗口下控件Enable属性

    参考页面: http://www.yuanjiaocheng.net/webapi/create-crud-api-1-put.html http://www.yuanjiaocheng.net/we ...

  9. VB.NET设置控件和窗体的显示级别

    前言:在用VB.NET开发射频检测系统ADS时,当激活已存在的目标MDI子窗体时,被其他子窗体遮住了,导致目标MDI子窗体不能显示. 这个问题怎么解决呢?网上看到一篇帖子VB.NET设置控件和窗体的显 ...

随机推荐

  1. Ubuntu下RabbitMQ安装

    由于RabbitMQ需要erlang语言的支持,在安装RabbitMQ之前需要安装erlang,执行命令: sudo apt-get install erlang-nox 安装RabbitMQ命令: ...

  2. 前端笔记二:DOM事件

    ---恢复内容开始--- ---恢复内容结束---

  3. 2015年第六届蓝桥杯JavaB组省赛试题解析

    题目及解析如下: 题目大致介绍: 第一题到第三题以及第六题.第七题是结果填空,方法不限只要得到最后结果就行 第四题和第五题是代码填空题,主要考察算法基本功和编程基本功 第八题到第十题是编程题,要求编程 ...

  4. StanFord ML 笔记 第五部分

    1.朴素贝叶斯的多项式事件模型: 趁热打铁,直接看图理解模型的意思:具体求解可见下面大神给的例子,我这个是流程图. 在上篇笔记中,那个最基本的NB模型被称为多元伯努利事件模型(Multivariate ...

  5. 检查Linux系统cpu--内存---磁盘的脚本

    花了一天写了三条命令分别检查cpu,内存,磁盘 [root@localhost ~]# cat cpu_mem_disk.sh #!/bin/sh # echo "1 检查cpu利用率--- ...

  6. [Unity插件]Lua行为树(三):组合节点Sequence

    Sequence的继承关系如下: Sequence->Composite->ParentTask->Task 上一篇已经实现了简单版本的ParentTask和Task(基于Behav ...

  7. atom编辑器适用

    因为要在多平台下适用node,同事推荐atom.所以下载了进行试用. 1.下载 https://atom.io/

  8. VS出现异常?!和十进制转二进制比是小事

    今天被VS的纠错机制下了一小跳. 使用VS时,如果代码出现异常,比如我,运行代码时,出现了无限循环,在调试的时候VS会自动停止运行,并在错误代码行断点提示. 之后会出现一个杂项文件,提示你这里错了.注 ...

  9. Call to undefined function think\finfo_open() 报错 解决方法

    Call to undefined function think\finfo_open() 经过各方面排查,是fileinfo扩展没有安装 安装即可

  10. 《算法》第四章部分程序 part 9

    ▶ 书中第四章部分程序,包括在加上自己补充的代码,两种拓扑排序的方法 ● 拓扑排序 1 package package01; import edu.princeton.cs.algs4.Digraph ...