zoukankan      html  css  js  c++  java
  • listview

    一、ListView:不同视图中一种显示想的集合,显示表格样式的数据信息
    1、视图: 
               在其右上方小箭头点击将视图改为Details;或者右键属性在外观View将其改为Details
    2、设置列头:
               在其右上方小箭头点击选择编辑列,然后添加列名;或右键属性-行为-Columns
    3、添加行数据 
               在其右上方小箭头点击选择编辑项,然后将属性Text改名,即第一列,添加成员即其它列;或右键属性-行为-Items

    二、连接数据库:
    1、建立实体类Users、Nation和数据访问类UsersData、NationData
    2、调用UsersData类中的Select方法,将全部数据取出来
         List<Student> list = new StudentData().Select();
    3、将数据导入到ListView中去

    //1、强全部数据取出来
    List<Users> list = new UserData().Select();//定义一个泛型集合调用UserData()中的查询方法
    int a = 1;//定义变量a,作为序号
    foreach (Users u in list)//遍历每条数据
    {
    ListViewItem li = new ListViewItem();

    li.Text = a.ToString();//序号
    li.SubItems.Add(u.username);
    li.SubItems.Add(u.password);
    li.SubItems.Add(u.nickname );
    li.SubItems.Add(u.sexstr);
    li.SubItems.Add(u.brithdaystr);
    li.SubItems.Add(u.nationname);

    listView1.Items.Add(li);
    a++;
    }

    4.窗体加载后自动绑定显示ListView中的数据

    办法:数据绑定代码写在窗体的构造函数中

    5.给用户展示最终数据(属性扩展)

    6.行号

    用C#变量循环++来实现

    7.数据重复绑定

    在绑定之前清空Items集合

    listView1.Items.Clear();

    8.选中一行数据

    外观:FullRowSelect:选择其中一项是否选中整行

            CheckBoxes:复选框

            GridLines:网格线

    行为:HideSelection :当控件没有焦点时,是否移除选定项的突出显示

            HeaderStyle:列表头的样式

            HoverSelection :鼠标悬浮在项上选择项,不好用,需停顿一会,通常与CheckBoxes连用 

    如何将选中的数据取出来

     一个是FullRowSelect属性为True可以选择整行数据
      ListView1.SelectedItems
      
     另一个是CheckBoxes属性为True时,可以按照复选框来选择整行数据
      ListView1.CheckedItems

    删除 只能一项

    private void button3_Click(object sender, EventArgs e)
            {
                int delcount = 0;
                int shengyucount = 0;
                string a = "";
                StudentData std = new StudentData();
                if (listView1.CheckedItems.Count <= 0)
                {
                    MessageBox.Show("请至少选择一项进行删除!");
                }
                else 
                {
                    delcount = listView1.CheckedItems.Count;
                    foreach (ListViewItem li in listView1.CheckedItems)
                    {
                        if (li.Checked)
                        {
                            bool ok = new StudentData().Delete(li.SubItems[1].Text);
                            if (ok)
                            {
                                shengyucount++;
                            }
                            else { a += li.SubItems[1].Text + ","; }
                        }
                    }
                    DBind();
                    if (delcount == shengyucount)
                    {
                        MessageBox.Show("删除成功");
                    }
                    else
                    {
                        MessageBox.Show("删除失败!要删除" + delcount + "条数据,未删除" + (delcount - shengyucount) + "条数据,未删除的用户名未:" + a + "");
                    }
                }
            }

    添加:

    学号不能为空,不能重复,名字不能为空

    private void button1_Click(object sender, EventArgs e)
            {
                Student st = new Student();
                StudentData sdt = new StudentData();
                if (textBox1.Text == "")
                {
                    xuehao.Text = "学号不能为空!";
                }
                else
                {
                    if (sdt.Select(textBox1.Text.Trim()))
                    {
                        xuehao.Text = "学号已存在!";
                    }
                    else
                    {
                        st.Code = textBox1.Text;
                    }
                }

                if (textBox2.Text != "")
                {
                    st.Name = textBox2.Text;
                }
                else
                {
                    xingming.Text = "姓名不能为空!";
                }

                if (radioButton1.Checked)
                {
                    st.Sex = true;
                }
                else
                {
                    st.Sex = false;
                }

                st.Birthday = dateTimePicker1.Value;
                st.SubjectCode = comboBox1.SelectedValue.ToString();
                bool b=sdt.Insert(st);
                if (b == true)
                {
                    MessageBox.Show("添加成功!");
                    this.Close();
                }
                else
                {
                    MessageBox.Show("添加失败!");
                }
                F1.DBind();
               

            }

  • 相关阅读:
    避免数据脏读
    OGG配置文件中参数化的运用
    GoldenGate基于中间队列文件的初始化
    一次linux中毒,挖矿病毒
    goldengate新版本中查看日志读取点
    dlopen用法参数flag介绍
    gdb调试带参数和调试core
    在现有的git服务器上面创建新的repo
    Play Old Diablo 2 on macOS Catalina
    Odoo中的Environment对象
  • 原文地址:https://www.cnblogs.com/power8023/p/5907832.html
Copyright © 2011-2022 走看看