VB.NET LISTVIEW实现功能简述
创始人
2024-06-20 08:31:44
0

在VB.NET开发框架内,同样具有很多控件供开发人员使用,方便的实现各种图形界面和程序功能需求。比如我们在这里为大家介绍的VB.NET LISTVIEW就是一款能够帮助我们实现排序的开发控件。#t#

控件:

TEXTBOX :1个 Name:txtJobNo

BUTTON: 2个 Name:btnFilter,btnShowAll

LISTVIEW : 1个 Name:lstvwJobNo Columns:JobNo,ContainerID,CartonID,PO,Style,Color,Size,ShipMent,Factory Sorting:none

VB.NET LISTVIEW编写源代码:

 

  1. Imports System.Data.SqlClient  
  2. Dim con As New SqlConnection  
  3. Dim varSQL As String  
  4. Dim r As Integer  
  5. Dim conString As String =
    "data source=127.0.0.1;initial 
    catalog=mydb; uid=sa;password=123"
     

 

'定义默认排序变量

  1. Dim mySort As String = "ASC" 

 

'VB.NET LISTVIEW定义默认字段变量

  1. Dim myField As String 
    = "JOB.JOBNO" 

 

'过滤指定条件的记录

  1. Private Sub btnFilter_Click(ByVal 
    sender As System.Object, ByVal e 
    As System.EventArgs) Handles 
    btnFilter.Click  
  2. Try  
  3. Dim fJobNo As String = "" 
  4. fJobNo = txtJobNo.Text.Trim()  
  5. r = List_dgJobNo(fJobNo)  
  6. Catch ex As Exception  
  7. MessageBox.Show(ex.ToString)  
  8. Finally  
  9. If con.State = ConnectionState.
    Open Then  
  10. con.Close()  
  11. End If  
  12. End Try  
  13. End Sub 

 

 

'VB.NET LISTVIEW显示所有记录

  1. Private Sub btnShowAll_Click
    (ByVal sender As System.Object, 
    ByVal e As System.EventArgs) 
    Handles btnShowAll.Click  
  2. List_dgJobNo("")  
  3. End Sub 

 

 

'函数功能:将读取出来的数据写入lstvwJovNo的表格中
'函数名称:List_dgJobNo,调用格式:List_dgJobNo("10022"),List_dgJobNo("")
'参 数:fJobNo,要查询的工作号JOBNO,为空时则查询所有的
'编 写 者:SD
'日 期:2005-9-23
'转载请保留此信息

  1. Private Function List_dgJobNo(ByVal 
    fJobNo As String) As Integer  
  2. Try  
  3. Cursor.Current = Cursors.WaitCursor  
  4. lstvwJobNo.Items.Clear()  
  5. con = New SqlConnection(conString)  
  6. Dim cmd As SqlCommand  
  7. Dim rd As SqlDataReader  
  8. If fJobNo.Length > 0 Then  
  9. varSQL = "SELECT JOB.JOBNO,CONTAINERNO,
    CARTONFROM,PO,STYLE,COLOR,CARTONSIZE,
    SHIPMENT,FACTORY FROM JOB,JOB_LINE 
    WHERE JOB.JOBNO=JOB_LINE.JOBNO AND JOB.
    JOBNO LIKE '%" & fJobNo & "%' "  
  10. Else  
  11. varSQL = "SELECT JOB.JOBNO,CONTAINERNO,
    CARTONFROM,PO,STYLE,COLOR,CARTONSIZE,
    SHIPMENT,FACTORY FROM JOB,JOB_LINE 
    WHERE JOB.JOBNO=JOB_LINE.JOBNO " 
  12. End If  
  13. varSQLvarSQL = varSQL & "ORDER BY " 
    & myField & " " & mySort & ";"  
  14. cmd = New SqlCommand(varSQL, con)  
  15. rd = cmd.ExecuteReader  
  16. Dim lsv As ListViewItem  
  17. While rd.Read  
  18. lsv = New ListViewItem(rd("JOBNO").ToString)  
  19. 'lsv.Checked = True 
  20. lsv.SubItems.Add(rd("ContainerNo").ToString)  
  21. lsv.SubItems.Add(rd("CartonFrom").ToString)  
  22. lsv.SubItems.Add(rd("PO").ToString)  
  23. lsv.SubItems.Add(rd("Style").ToString)  
  24. lsv.SubItems.Add(rd("Color").ToString)  
  25. lsv.SubItems.Add(rd("CartonSize").ToString)  
  26. lsv.SubItems.Add(rd("ShipMent").ToString)  
  27. lsv.SubItems.Add(rd("Factory").ToString)  
  28. lstvwJobNo.Items.Add(lsv)  
  29. End While  
  30. Cursor.Current = Cursors.Default  
  31. Return List_dgJobNo = 1 
  32. Catch ex As Exception  
  33. MessageBox.Show(ex.ToString)  
  34. Return List_dgJobNo = -1  
  35. Finally  
  36. If con.State = ConnectionState.Open Then  
  37. con.Close()  
  38. End If  
  39. End Try  
  40. End Function 

 

 

'VB.NET LISTVIEW获得排序的字段,并显示排序标记

  1. Private Sub lstvwJobNo_ColumnClick
    (ByVal sender As Object, ByVal e As 
    System.Windows.Forms.ColumnClickEventArgs) 
    Handles lstvwJobNo.ColumnClick  
  2. Select Case e.Column.ToString  
  3. Case 0  
  4. myField = "JOB.JOBNO" 
  5. Case 1  
  6. myField = "CONTAINERNO" 
  7. Case 2  
  8. myField = "CARTONFROM" 
  9. Case 3  
  10. myField = "PO" 
  11. Case 4  
  12. myField = "STYLE" 
  13. Case 5  
  14. myField = "COLOR" 
  15. Case 6  
  16. myField = "CARTONSIZE" 
  17. Case 7  
  18. myField = "SHIPMENT" 
  19. Case 8  
  20. myField = "FACTORY" 
  21. End Select  
  22. Dim i As Integer  
  23. For i = 0 To 8  
  24. lstvwJobNo.Columns(i).Text = 
    lstvwJobNo.Columns(i).Text.Replace
    (" ▼", "").Replace(" ▲", "")  
  25. Next  
  26. If mySort = "ASC" Then  
  27. lstvwJobNo.Columns(e.Column.ToString)
    .Text = lstvwJobNo.Columns(e.Column.
    ToString).Text & " ▼"  
  28. mySort = "DESC" 
  29. Else  
  30. mySort = "ASC" 
  31. lstvwJobNo.Columns(e.Column.ToString).
    Text = lstvwJobNo.Columns(e.Column.
    ToString).Text & " ▲"  
  32. End If  
  33. Dim fJobNo As String = "" 
  34. fJobNo = txtJobNo.Text.Trim()  
  35. r = List_dgJobNo(fJobNo)  
  36. lstvwJobNo.Refresh()  
  37. End Sub 

VB.NET LISTVIEW的相关操作方法和实现的功能就为大家介绍到这里。

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...