您好,登錄后才能下訂單哦!
VB.NET LISTVIEW的相關操作方法和實現的功能有哪些,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
在VB.NET開發框架內,同樣具有很多控件供開發人員使用,方便的實現各種圖形界面和程序功能需求。比如我們在這里為大家介紹的VB.NET LISTVIEW就是一款能夠幫助我們實現排序的開發控件。
控件:
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編寫源代碼:
Imports System.Data.SqlClient
Dim con As New SqlConnection
Dim varSQL As String
Dim r As Integer
Dim conString As String =
"data source=127.0.0.1;initial
catalog=mydb; uid=sa;password=123"
'定義默認排序變量
Dim mySort As String = "ASC"
'VB.NET LISTVIEW定義默認字段變量
Dim myField As String
= "JOB.JOBNO"
'過濾指定條件的記錄
Private Sub btnFilter_Click(ByVal
sender As System.Object, ByVal e
As System.EventArgs) Handles
btnFilter.ClickTry
Dim fJobNo As String = ""
fJobNo = txtJobNo.Text.Trim()
r = List_dgJobNo(fJobNo)
Catch ex As Exception
MessageBox.Show(ex.ToString)
Finally
If con.State = ConnectionState.
Open Thencon.Close()
End If
End Try
End Sub
'VB.NET LISTVIEW顯示所有記錄
Private Sub btnShowAll_Click
(ByVal sender As System.Object,
ByVal e As System.EventArgs)
Handles btnShowAll.ClickList_dgJobNo("")
End Sub
'函數功能:將讀取出來的數據寫入lstvwJovNo的表格中
'函數名稱:List_dgJobNo,調用格式:List_dgJobNo("10022"),List_dgJobNo("")
'參 數:fJobNo,要查詢的工作號JOBNO,為空時則查詢所有的
'編 寫 者:SD
'日 期:2005-9-23
'轉載請保留此信息
Private Function List_dgJobNo(ByVal
fJobNo As String) As IntegerTry
Cursor.Current = Cursors.WaitCursor
lstvwJobNo.Items.Clear()
con = New SqlConnection(conString)
Dim cmd As SqlCommand
Dim rd As SqlDataReader
If fJobNo.Length > 0 Then
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 & "%' "Else
varSQL = "SELECT JOB.JOBNO,CONTAINERNO,
CARTONFROM,PO,STYLE,COLOR,CARTONSIZE,
SHIPMENT,FACTORY FROM JOB,JOB_LINE
WHERE JOB.JOBNO=JOB_LINE.JOBNO "End If
varSQLvarSQL = varSQL & "ORDER BY "
& myField & " " & mySort & ";"cmd = New SqlCommand(varSQL, con)
rd = cmd.ExecuteReader
Dim lsv As ListViewItem
While rd.Read
lsv = New ListViewItem(rd("JOBNO").ToString)
'lsv.Checked = True
lsv.SubItems.Add(rd("ContainerNo").ToString)
lsv.SubItems.Add(rd("CartonFrom").ToString)
lsv.SubItems.Add(rd("PO").ToString)
lsv.SubItems.Add(rd("Style").ToString)
lsv.SubItems.Add(rd("Color").ToString)
lsv.SubItems.Add(rd("CartonSize").ToString)
lsv.SubItems.Add(rd("ShipMent").ToString)
lsv.SubItems.Add(rd("Factory").ToString)
lstvwJobNo.Items.Add(lsv)
End While
Cursor.Current = Cursors.Default
Return List_dgJobNo = 1
Catch ex As Exception
MessageBox.Show(ex.ToString)
Return List_dgJobNo = -1
Finally
If con.State = ConnectionState.Open Then
con.Close()
End If
End Try
End Function
'VB.NET LISTVIEW獲得排序的字段,并顯示排序標記
Private Sub lstvwJobNo_ColumnClick
(ByVal sender As Object, ByVal e As
System.Windows.Forms.ColumnClickEventArgs)
Handles lstvwJobNo.ColumnClickSelect Case e.Column.ToString
Case 0
myField = "JOB.JOBNO"
Case 1
myField = "CONTAINERNO"
Case 2
myField = "CARTONFROM"
Case 3
myField = "PO"
Case 4
myField = "STYLE"
Case 5
myField = "COLOR"
Case 6
myField = "CARTONSIZE"
Case 7
myField = "SHIPMENT"
Case 8
myField = "FACTORY"
End Select
Dim i As Integer
For i = 0 To 8
lstvwJobNo.Columns(i).Text =
lstvwJobNo.Columns(i).Text.Replace
(" ▼", "").Replace(" ▲", "")Next
If mySort = "ASC" Then
lstvwJobNo.Columns(e.Column.ToString)
.Text = lstvwJobNo.Columns(e.Column.
ToString).Text & " ▼"mySort = "DESC"
Else
mySort = "ASC"
lstvwJobNo.Columns(e.Column.ToString).
Text = lstvwJobNo.Columns(e.Column.
ToString).Text & " ▲"End If
Dim fJobNo As String = ""
fJobNo = txtJobNo.Text.Trim()
r = List_dgJobNo(fJobNo)
lstvwJobNo.Refresh()
End Sub
看完上述內容,你們掌握VB.NET LISTVIEW的相關操作方法和實現的功能有哪些的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。