用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. Device supprts x86,armeabi-v7a,but APK only aupports armeabi;模拟机不能运行。

    在真机可以运行,模拟机却不可以: 这个是模拟机: 修改: defaultConfig { ndk{ abiFilters "armeabi" } } 为: defaultConfi ...

  2. leetcode 852. Peak Index in a Mountain Array

    Input: [0,1,0] Output: 1 Input: [0,2,1,0] Output: 1解: 比较数组中的i和i-1的大小,如果前一位大于后一位数字,前一位则是结果 let ans = ...

  3. mysql之pymsql的使用

    # -*- coding:utf-8 -*- import pymysql user = input('请输入用户名:') pwd = input('请输入密码:') # 1.连接 conn = py ...

  4. getpass模块 ---- optparse

    getpass模块,不回显 常用方法 import getpass password=getpass.getpass('input your password: ').strip() 其他用法 use ...

  5. [Unity工具]嵌套Prefab

    在父Prefab中嵌套子Prefab,那么如果对这个嵌套Prefab进行修改,改变将不会应用到子Prefab中:同理,对子Prefab的修改,也不会应用到这个嵌套Prefab中.因此,就会出现一些问题 ...

  6. pig简介

    Apache Pig是MapReduce的一个抽象.它是一个工具/平台,用于分析较大的数据集,并将它们表示为数据流.Pig通常与 Hadoop 一起使用:我们可以使用Apache Pig在Hadoop ...

  7. centos7+hadoop完全分布式集群搭建

    Hadoop集群部署,就是以Cluster mode方式进行部署.本文是基于JDK1.7.0_79,hadoop2.7.5.  1.Hadoop的节点构成如下: HDFS daemon:  NameN ...

  8. 高级js--(面向对象js,arguments,闭包,自调)

    1. Arguments对象    l检测参数个数 1.在函数代码中,使用特殊对象 arguments,开发者无需明确指出参数名,就能访问它们. function howManyArgs() { al ...

  9. element 表格无法绑定服务返回数据

    无法直接绑定返回的Object属性,需要用js做一次对象转换后,才能绑定 <template> <div> <!--<button>添加服务器</but ...

  10. 机器学习进阶-边缘检测-Canny边缘检测 1.cv2.Canny(进行Canny边缘检测)

    1. cv2.Canny(src, thresh1, thresh2) 进行canny边缘检测 参数说明: src表示输入的图片, thresh1表示最小阈值,thresh2表示最大阈值,用于进一步删 ...