转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> VB.NET程序 >> 正文
VB.NET中LISTVIEW排序(原创)         ★★★★

VB.NET中LISTVIEW排序(原创)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1728 更新时间:2009/4/23 19:00:12

控件:

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

源代码:

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"

''''定义默认字段变量
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

''''显示所有记录
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

            varSQL = 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

''''获得排序的字段,并显示排序标记
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(" ▲", "")
        Nex

[1] [2]  下一页


[VB.NET程序]使用vb.net 对 Windows Form 按列排序 ListView 项…  [Web开发]ASP.NET Atlas ListView显示列表数据
[Sql Server]把sql字符串中选择的内容显示在ListView  
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台