zoukankan      html  css  js  c++  java
  • ListView控件的数据绑定与读取

    ListView控件可以直接查看数据信息,使操作更加容易。这篇文章将告诉你C#中的ListView数据绑定控件的一些用法,希望对要用到ListView控件的新手朋友有所帮助。

    Listview中添加表头

     

      在控制编辑列中添加表头

       //表头的样式
         listView1.GridLines = true;
         listView1.FullRowSelect = true;
         listView1.View = View.Details;
         listView1.Scrollable = false;
         listView1.MultiSelect = false;
         listView1.HeaderStyle = ColumnHeaderStyle.Clickable;
                 
       //方法一
       //声明标题与创建对象
        ColumnHeader ch = new ColumnHeader();
        //标题
        ch.Text = "奥运参赛国家";
        //列宽,默认为60
        ch.Width = 60;
       //显示文本 对齐方式
        ch.TextAlign = HorizontalAlignment.Center;  

       //把标题添加到listview this.listView1.Columns.Add(ch); //后续列 ColumnHeader againCh...      //方法二
      
    listView1.Columns.Add("ID", 50, HorizontalAlignment.Center);
      listView1.Columns.Add(
    "国家", 50, HorizontalAlignment.Center);
      listView1.Columns.Add("金牌", 50, HorizontalAlignment.Center);   listView1.Columns.Add("银牌", 50, HorizontalAlignment.Center);   listView1.Columns.Add("铜牌", 60, HorizontalAlignment.Center);

    Listview控件的数据绑定

      采用foreach遍历dtds的每一行记录,然后绑定到ListView的对应列里。

         private void BindDataToListView() 
            {
                //清理旧的数据
                this.listView1.Items.Clear();
                DataSet ds = 数据(database)//判断ds是否存在数据
                if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0) 
                {
                    foreach (DataRow dr in ds.Tables[0].Rows)
                    {
                        int sor = Convert.ToInt32(dr["ID"].ToString());
                        string strNation = dr["Nation"].ToString();
                        string strGoldMedal = dr["GoldMedal"].ToString();
                        string strSilverMedal = dr["SilverMedal"].ToString();
                        string strBronzeMedal = dr["BronzeMedal"].ToString();
                        ListViewItem IvItem = new ListViewItem();
                        //ID
                        IvItem.Text = sor.ToString();
                        IvItem.Tag = dr;
                        //国家
                        IvItem.SubItems.Add(strNation.ToString());
                        //金牌
                        IvItem.SubItems.Add(strGoldMedal.ToString());
                        //银牌
                        IvItem.SubItems.Add(strSilverMedal.ToString());
                        //铜牌
                        IvItem.SubItems.Add(strBronzeMedal.ToString());
                        this.listView1.Items.Add(IvItem);
                    }
    
                }
            }

      

      蒽,获取当前点击ListView中行的数据,然后显示出来:

            private void listView1_Click(object sender, EventArgs e)
            {
                if (listView1.Items.Count <= 0) return;
    
                if (listView1.SelectedItems.Count <= 0) return;
    
                int index = this.listView1.SelectedItems[0].Index;
                if (index < 0) return;
                DataRow dr = (DataRow)(this.listView1.Items[index].Tag);
                MessageBox.Show(dr["Nation"].ToString() + dr["GoldMedal"].ToString()); 
           MessageBox.Show(
    this.listView1.SelectedItems[0].SubItems[1].Text.ToString());

          
    //方法二
           MessageBox.Show(listView1.SelectedItems[0].SubItems[0].Text);
           MessageBox.Show(listView1.SelectedItems[
    0].SubItems[1].Text);
           MessageBox.Show(listView1.SelectedItems[
    0].SubItems[2].Text);

          //ListViewItem iv = new ListViewItem(ds.Tables[0].Rows[1][1].ToString());
      
          //iv.Tag = ds.Tables[0].Rows[1][1].ToString(); ////读取隐藏列
        
          //this.listView1.SelectedItems[0].Tag.ToString();
         }

    隐藏列

      在上面第二中方法中有解决方法,可以读取被隐藏的列。

      在第二种方法中: lv = new ListViewItem(ds.Tables[0].Rows[i][1].ToString()); 意味着listview中的第一行的数据信息,

      lv.Tag=ds.Tables[0].Rows[i][0].ToString(); //代表隐藏列。

      读取隐藏列时,可以使用下面的代码来获取隐藏列的值。

      //this.listView1.SelectedItems[0].Tag.ToString(); 

     

     

     

  • 相关阅读:
    ADexplorer
    Ldap登陆AD(Active Directory)进行认证的Java示例
    通过LDAP验证Active Directory服务
    APACHE + LDAP 的权限认证配置方法
    How to authenticate a user by uid and password?
    js汉字与拼音互转终极方案,附简单的JS拼音输入法【转】
    给MySQL增加mysql-udf-http和mysql-udf-json自定义函数,让MySQL有调用http接口和查询直接回JSON的能力
    CentOS6.7安装RabbitMQ3.6.5
    CentOS利用inotify+rsync实现文件同步
    CentOS两台服务器利用scp拷贝文件
  • 原文地址:https://www.cnblogs.com/aehoo/p/BindDataToListViewInCsharp.html
Copyright © 2011-2022 走看看