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.Click Try 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 Then con.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.Click List_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 Integer Try 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.ColumnClick Select 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的相关操作方法和实现的功能有哪些的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。