以前在VB中用过到listView控件,可是在WinForm中我不知道怎么用,请会的朋友帮帮我.我想知道在WinForm中我要为listView添加表头用什么方法,还有,我要把数据库中的数据添加到listView控件中用什么方法?在VB中用的是listView1.ColumnHeaders.Add()的方法添加表头的.但是在WinForm中只有Columns方法我试了不知道怎么用呀

解决方案 »

  1.   

    添加表头:
    lv.Columns.Add ( "设备编号" , 85 , HorizontalAlignment.Right ) ;
    lv.Columns.Add ( "使用部门" , 85 , HorizontalAlignment.Left ) ; 
    lv.Columns.Add ( "使用人" ,   85 , HorizontalAlignment.Left ) ;
    lv.Columns.Add ( "购买日期" , 85 , HorizontalAlignment.Left ) ;
    lv.Columns.Add ( "保修期限" , 85 , HorizontalAlignment.Left ) ;
    lv.Columns.Add ( "品牌" ,     85 , HorizontalAlignment.Left ) ;
    lv.Columns.Add ( "型号" ,     85 , HorizontalAlignment.Left ) ;
    lv.Columns.Add ( "金额" ,     85 , HorizontalAlignment.Left ) ;
    lv.Columns.Add ( "设备状态" ,     85 , HorizontalAlignment.Left ) ;
    lv.Columns.Add ( "审核状态" , 85 , HorizontalAlignment.Left ) ;
    lv.Columns.Add ( "备注" ,     100 , HorizontalAlignment.Left ) ;

    this.BindLV("");帮定数据:
    try
    {
    while ( reader.Read ( ) )
    {
    ListViewItem li = new ListViewItem ( ) ;
    li.SubItems.Clear ( ) ;
    li.SubItems[0].Text = reader["CID"].ToString ( ) ;
    if(this.radioButton2.Checked==true)
    {
    li.SubItems.Add ( reader["DEPART"].ToString ( ) ) ;
    li.SubItems.Add ( reader["USERNAME"].ToString ( ) ) ;
    }
    else
    {
    li.SubItems.Add ( "" ) ;
    li.SubItems.Add ( "") ;
    }
    li.SubItems.Add ( Convert.ToDateTime(reader["PURCHASEDATE"]).ToShortDateString( ) ) ;
    li.SubItems.Add ( Convert.ToDateTime(reader["GUARANTEETIME"]).ToShortDateString( ) ) ;
    li.SubItems.Add ( reader["BRAND"].ToString ( ) ) ;
    li.SubItems.Add ( reader["MODEL"].ToString ( ) ) ;
    li.SubItems.Add ( reader["PRICE"].ToString ( ) ) ;
    switch(reader["STATUS"].ToString())
    {
    case "0": li.SubItems.Add ( "良品" ) ;break;
    case "1": li.SubItems.Add ( "使用中" ) ;break;
    case "2": li.SubItems.Add ( "报废" ) ;break;
    }
    switch(reader["FLAG"].ToString())
    {
    case "0": li.SubItems.Add ( "待审核" ) ;break;
    case "1": li.SubItems.Add ( "已审核" ) ;break;
    }
    li.SubItems.Add ( reader["REMARK"].ToString ( ) ) ;
    lv.Items.Add ( li ) ;
    }
    }
    catch(System.Exception err)
    {
    MessageBox.Show(err.Message);
    }
    finally
    {
    reader.Close ( ) ; // 关闭数据集
    this.Controls.Add ( lv ) ;// 在Form中添加此列表
    conn.Close(); // 关闭Form的时候,同时也关闭数据连接
    }
      

  2.   

    谢谢,能把连接数据库及获得数据集reader的代码也发给我吗?
      

  3.   

    this.BindLV("");这个是什么意思呀?我试了如果光写下面这段代码,运行时还是看不到表头的呀
    lv.Columns.Add ( "设备编号" , 85 , HorizontalAlignment.Right ) ;
    lv.Columns.Add ( "使用部门" , 85 , HorizontalAlignment.Left ) ; 
    lv.Columns.Add ( "使用人" ,   85 , HorizontalAlignment.Left ) ;
      

  4.   

    把view属性调整为details就可以了