LisView控件

用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[0].ToString();
                    s.Name = dr[1].ToString();
                    s.Sex = Convert.ToBoolean(dr[2]);
                    s.Birthday = Convert.ToDateTime(dr[3]);
                    s.Score = Convert.ToDecimal(dr[4]);

                    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);
            }
        }
    }
}

 

posted @ 2016-06-30 00:02  小飛  阅读(284)  评论(0编辑  收藏  举报