• WinFrom 公共控件 Listview 的使用


    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             }
  • 相关阅读:
    艾伟_转载:把事件当作对象进行传递 狼人:
    艾伟_转载:AOP in Asp.net MVC 狼人:
    艾伟_转载:基于.NET平台的Windows编程实战(一)——前言 狼人:
    艾伟_转载:闲说继承 狼人:
    艾伟_转载:面向对象封装了啥 狼人:
    艾伟_转载:LINQ to SQL、NHibernate比较(二) LINQ to SQL实例 狼人:
    艾伟_转载:我对NHibernate的感受(1):对延迟加载方式的误解 狼人:
    艾伟_转载:用C#编程合并多个WORD文档 狼人:
    艾伟_转载:基于.NET平台的Windows编程实战(二)—— 需求分析与数据库设计 狼人:
    艾伟_转载:从ASP.NET的PHP执行速度比较谈起 狼人:
  • 原文地址:https://www.cnblogs.com/fuze/p/6183342.html
Copyright © 2020-2023  润新知