Listview绑定数据库数据展示与操作使用
1.拖一个Listview控件到项目中先将视图改为Details
2.编辑列 设置列头 添加columnHeader成员 Text 是显示的名称
3.添加行数据 ,连接数据库 代码如下
1 listView1.Items.Clear(); //绑定数据之前清空一下listView中的数据 2 List<Users> list = new UsresData().select();// 将数据库中的数据取出来 3 //将数据放入listView中去 4 int a = 1;//行号 5 foreach (Users u in list) 6 { 7 ListViewItem li = new ListViewItem(); 8 li.Text = a.ToString();// 第一列的行数据数据添加到li.text中去 添加行号 9 li.SubItems.Add(u.UserName); //之后行数据都放在SubItems集合中去 10 li.SubItems.Add(u.PassWord); 11 li.SubItems.Add(u.NickName); 12 li.SubItems.Add(u.Sexstr); 13 li.SubItems.Add(u.Birthdaystr); 14 li.SubItems.Add(u.NationName); 15 li.SubItems.Add(u.Areaname); 16 a++; 17 listView1.Items.Add(li);//添加到listView Items 集合中去 18 }
4.选中行数据进行删除与修改操作
CheckBoxes属性为True时,可以按照复选框来选择整行数据选中的数据存放在ListView1.CheckedItems
删除操作
1 int decount = 0;//定义一个删除数据的总条数 2 int count = 0;//定义一个已经删除的数据条数 3 string notdel = "";//定义一个未删除成功的数据的主键值 4 if (listView1.CheckedItems.Count <= 0)//未选择 5 { 6 MessageBox.Show("请选择要删除的数据!"); 7 } 8 else//选择数据 9 { 10 decount = listView1.CheckedItems.Count; //删除的总条数 11 12 foreach (ListViewItem li in listView1.CheckedItems)//遍历选中的数据 13 { 14 DialogResult d= MessageBox.Show("确定要删除吗?","警告!!!",MessageBoxButtons.OKCancel);//弹框提示 15 if (d == DialogResult.OK) 16 { 17 bool ok = new UsresData().delete(li.SubItems[1].Text); 18 if (ok)//如果删除成功 19 { 20 count++; 21 } 22 else //删除不成功记录每删除的数据的主键值 23 { 24 notdel += li.SubItems[1].Text; 25 } 26 } 27 } 28 Usersbind();//listview数据读取的方法 29 if (decount == count) 30 { 31 MessageBox.Show("删除成功!"); 32 } 33 else 34 { 35 MessageBox.Show("要删除"+decount+"条数据,未删除" + (decount -count) + "条数据,未删除用户名是:" + notdel + ""); 37 } 38 }
修改操作 只能选择一条数据进行修改
1 if (listView1.CheckedItems.Count <= 0)//没有选择数据 2 { 3 MessageBox.Show("请选择要修改的数据!"); 4 } 5 else if (listView1.CheckedItems.Count == 1) // 选择一条数据 6 { 7 foreach (ListViewItem li in listView1.CheckedItems) 8 { 9 Form4 f4 = new Form4(this,li);// 将数据传到修改数据的窗体中去 10 f4.Owner = this; 11 f4.Show(); 12 } 13 } 14 else //选择多条数据时提示 15 { 16 MessageBox.Show("只能选择一条数据进行修改!"); 17 }