溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

VB.NET LISTVIEW的相關(guān)操作方法和實(shí)現(xiàn)的功能有哪些

發(fā)布時(shí)間:2021-11-24 09:54:53 來(lái)源:億速云 閱讀:495 作者:柒染 欄目:編程語(yǔ)言

VB.NET LISTVIEW的相關(guān)操作方法和實(shí)現(xiàn)的功能有哪些,相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。

在VB.NET開(kāi)發(fā)框架內(nèi),同樣具有很多控件供開(kāi)發(fā)人員使用,方便的實(shí)現(xiàn)各種圖形界面和程序功能需求。比如我們?cè)谶@里為大家介紹的VB.NET LISTVIEW就是一款能夠幫助我們實(shí)現(xiàn)排序的開(kāi)發(fā)控件。

控件:

TEXTBOX :1個(gè) Name:txtJobNo

BUTTON: 2個(gè) Name:btnFilter,btnShowAll

LISTVIEW : 1個(gè) Name:lstvwJobNo Columns:JobNo,ContainerID,CartonID,PO,Style,Color,Size,ShipMent,Factory Sorting:none

VB.NET LISTVIEW編寫(xiě)源代碼:

  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"
     

'定義默認(rèn)排序變量

Dim mySort As String = "ASC"

'VB.NET LISTVIEW定義默認(rèn)字段變量

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

'過(guò)濾指定條件的記錄

  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 

'函數(shù)功能:將讀取出來(lái)的數(shù)據(jù)寫(xiě)入lstvwJovNo的表格中
'函數(shù)名稱:List_dgJobNo,調(diào)用格式:List_dgJobNo("10022"),List_dgJobNo("")
'參 數(shù):fJobNo,要查詢的工作號(hào)JOBNO,為空時(shí)則查詢所有的
'編 寫(xiě) 者:SD
'日 期:2005-9-23
'轉(zhuǎn)載請(qǐng)保留此信息

  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獲得排序的字段,并顯示排序標(biāo)記

  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 

看完上述內(nèi)容,你們掌握VB.NET LISTVIEW的相關(guān)操作方法和實(shí)現(xiàn)的功能有哪些的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI