this.listview.Items .Add ("NO 2").SubItems .Add ("科比");     可以向listview的1行中添加2列信息,如果添加三列四列呢,怎么写  顺便问问listview与数据绑定的东东   如果listview有很多列,我用什么方法一下子把一行所有列的数据全部添加上(巨恶,必须用listview,谢谢),也就是说我用什么方法实现比较好点,给点建议
  
  

解决方案 »

  1.   

                    
    作一个类
    类里面的属性个数正好是listview榜定的item数量
    必然
    listInfo info=new listInf();                ListViewItem itme = new ListViewItem();
                    itme.SubItems[0].Text =info.Name;
                    itme.SubItems.Add(info.Id);
                    itme.SubItems.Add(info.Age);
                    itme.SubItems.Add(info.Tel);
                    listView1.Items.Add(itme);
      

  2.   


    this.listView1.Items.Add(new ListViewItem(new string[] { "dfd", "dfd", "ddff", "dfdf" }));
      

  3.   

    ListView本身不支持绑定
    只能使用SubItems添加~~~~
      

  4.   

    楼上的代码很少用:
    ----------
    this.listView1.Items.Add(new ListViewItem(new string[]{"111", "2222", "3333"}));
      

  5.   

                ListViewItem lv = new ListViewItem();
                lv.SubItems[0].Text = "hc";
                lv.SubItems.Add("sq");
                listview1.items.Add(lv);            ListViewItem lv1 = new ListViewItem();
                lv1.SubItems[0].Text = "sq";
                lv1.SubItems.Add("hc");
                listView1.Items.Add(lv1);    
      

  6.   

    取到的数据放到一个List<string>中,然后用foreach(string item in ...)来添加不就行了?
      

  7.   

    很少用?我就经常这样用,尤其在循环里面  new string[] str=new string[this.listView1.Columns.Count];
      str[1]="dfekre";
      str[2]="drer";
     .....
      this.listView1.Items.Add(new ListViewItem(str));  
      

  8.   

      
     
     如果字段类型不一样呢  比如有的是string  有的是int 
      

  9.   

    listview 里面有int吗?
    反正我还没有用过呢.
    如果楼主要绑定数据库的话还是用datagridview好.
      

  10.   

    如果字段类型不一样呢  比如有的是string  有的是int 
    -----》
    那你就把int转成string
    反正加到ListView后都是string
      

  11.   

    ListView本身不支持数据绑定下面是一段样例DataTable dtProducts = Product.GetProducts();
    lvwProducts.BeginUpdate();ListViewItem listItem;
    foreach (DataRow dr in dtProducts.Rows)
    {
        listItem = new ListViewItem(dr["ProductName"].ToString());    //设置组 只在分组时有效
        listItem.Group = lvwProducts.Groups[dr["CategoryID"].ToString()];    //添加子项 只在Datails视图下有效
        listItem.SubItems.Add(dr["ProductID"].ToString());
        listItem.SubItems.Add(dr["UnitPrice"].ToString());
        listItem.SubItems.Add(dr["Discontinued"].ToString());
        lvwProducts.Items.Add(listItem);
    }//为Details视图添加列头
    if (lvwProducts.Columns.Count == 0)
    {
        lvwProducts.Columns.Add("ProductName", 100, HorizontalAlignment.Left);
        lvwProducts.Columns.Add("ProductID", 100, HorizontalAlignment.Left);
        lvwProducts.Columns.Add("UnitPrice", 100, HorizontalAlignment.Left);
        lvwProducts.Columns.Add("Discontinued", 100, HorizontalAlignment.Left);
    }lvwProducts.EndUpdate();
      

  12.   

    用这样的方法试试看。private void LoadListView(DataTable dt)
    {
         listView1.Items.Clear();
         //用于整体插入ListView
         ListViewItem[] retItems = new ListViewItem[dt.Rows.Count];
         foreach (DataRow dr in dt.Rows)
         {
             string[] items ={ dr["字段名"].ToString()....... };
             retItems[dt.Rows.IndexOf(dr)] = new ListViewItem(items);
         }
         listView1.Items.AddRange(retItems);
    }