zoukankan      html  css  js  c++  java
  • winform 公共控件 ListView

    //数据显示,刷新
            public void F5()
            {
                listView1.Items.Clear();
                List<Students> Stu = new StudentsData().SeletAll(F1.textBox1.Text);
                foreach (Students s in Stu)
                {
                    ListViewItem li = new ListViewItem();
                    li.Text = s.Ids.ToString();
                    li.SubItems.Add(s.Code);
                    li.SubItems.Add(s.Name);
                    li.SubItems.Add(s.Sexdd);
                    li.SubItems.Add(s.Age.ToString());
                    li.SubItems.Add(s.Birthday.ToString("yyyy年MM月dd日"));
                    li.SubItems.Add(s.Nationna);
                    li.SubItems.Add(s.ClassNa);
                    li.SubItems.Add(s.Score.ToString());
                    listView1.Items.Add(li);
                }
    
            }

    ListView控件是一个winform自带的表格型的应用数据展示控件

    好处:是功能比较完善,不需要再自己设置

    缺点:不好的地方就是不能设置控件中单元格的大小,字体变大之后超出部分就会隐藏,不能直接输入内容,

    要将表中的数据展示出来,需要做到以下几步:

    1.先设置好ListView的列名,确定好要展示的的数据有几列

    (1)如何设置列名:

    点击行为属性Columns,可以设置要设置的列名(text),可以设置很多属性,基本和其他控件一致,如图:

    2.查询要展示的表的内容,把这个写成一个方法,方便别的Form调用

    //查询所有学生信息
            public List<Students> SeletAll(string a)
            {
                List<Students> Stu = new List<Students>();
                cmd.CommandText = "select *from Students where Adm=@a order by Ids asc";
                cmd.Parameters.Clear();
                cmd.Parameters.AddWithValue("@a", a);
                conn.Open();
                SqlDataReader dr = cmd.ExecuteReader();
                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        Students s = new Students();
                        s.Ids = Convert.ToInt32(dr["Ids"]);
                        s.Code = dr["Code"].ToString();
                        s.Name = dr["Name"].ToString();
                        s.Sex = Convert.ToBoolean(dr["Sex"]);
                        s.Nation = dr["Nation"].ToString();
                        s.Birthday = Convert.ToDateTime(dr["Birthday"]);
                        s.Class = dr["Class"].ToString();
                        s.Score = Convert.ToInt32(dr["Score"]);
                        Stu.Add(s);
                    }
                }
                conn.Close();
                return Stu;
            }

    3.将数据关联起来

     这个写成了一个方法,方便在每次重载时调用,并能保证数据传递后调用刷新的方法

    //数据显示,刷新
            public void F5()
            {
                listView1.Items.Clear();
                List<Students> Stu = new StudentsData().SeletAll(F1.textBox1.Text);
                foreach (Students s in Stu)
                {
                    ListViewItem li = new ListViewItem();
                    li.Text = s.Ids.ToString();
                    li.SubItems.Add(s.Code);
                    li.SubItems.Add(s.Name);
                    li.SubItems.Add(s.Sexdd);
                    li.SubItems.Add(s.Age.ToString());
                    li.SubItems.Add(s.Birthday.ToString("yyyy年MM月dd日"));
                    li.SubItems.Add(s.Nationna);
                    li.SubItems.Add(s.ClassNa);
                    li.SubItems.Add(s.Score.ToString());
                    listView1.Items.Add(li);
                }
    
            }

    4.获取选中数据的各种操作

    (1)一次删除多个信息

    if (listView1.CheckedItems.Count <= 0)
                {
                    MessageBox.Show("请先选中学生信息!");
                }
                else
                {
                    int count = 0;
                    int Nxx = listView1.CheckedItems.Count;
                    List<int> Lt = new List<int>();
                    foreach (ListViewItem li in listView1.CheckedItems)
                    {
                        Lt.Add(Convert.ToInt32(li.Text));
                    }
                    for (int cxx = 0; cxx < Nxx; cxx++)
                    {
                        if (new StudentsData().Delete(Lt[cxx], F1.textBox1.Text))
                        {
                            count++;
                        }
                    }
                    F5();
                    MessageBox.Show("学生信息删除成功,本次共删除" + count + "名学生.");
                }
  • 相关阅读:
    Android视图SurfaceView的实现原理分析
    SurfaceView
    Bitnami WordPress如何修改MySQL root的默认密码?
    Delphi XE8中Delphi和JAVA数据类型对应关系!
    Delphi XE8中Delphi和JAVA数据类型对应关系!
    Delphi XE8中Android开发有用的资源!
    Delphi XE8中Android开发有用的资源!
    Delphi XE8如何同Eclipse使用相同的Android SDK?
    关键字
    sub-G 无线芯片基础知识
  • 原文地址:https://www.cnblogs.com/big-lll/p/6869011.html
Copyright © 2011-2022 走看看