自己動手用代碼實現VB.NET ListView加載數據
VB.NET還是比較常用的,于是我研究了一下VB.NET ListView,在這里拿出來和大家分享一下,希望對大家有用。平時我們在VB.NET中開發數據庫相關的程序都會用到DataGrid來顯示數據,它的使用相對簡單,也有排序的功能,基本能滿一般的要求。但有時它并不能滿足項目的功能需求,這時我們就想到了用VB.NET ListView,雖然它的功能正是我們所要的,必競它不是一個數據庫的控件,不能像DataGrid那樣通過簡單的設置就可以顯示數據,同時也沒有排序的功能,這些就要我們自已用程序代碼來實現了。
前些天在開發一個項目時就寫了一段使用VB.NET ListView顯示數據并實現排序的代碼,簡單地說一下它的實現原理:顯示數據是通過循環讀取數據記錄,用VB.NET ListView的Add方法將數據添加到ListView中;排序的功能是通過ListView列的點擊事件來得到要排序的字段,再使用ORDER BY關鍵字組合SQL重新加載數據來實現排序的。
以下是程序所使用的數據庫及控件的設置信息:
數據庫名:Northwind(SQL SERVER 2000中自帶的,如果沒有此數據庫請先建立)
表名:Products(如果沒有這個表,請使用后面附帶的SQL語句建立)
窗體名:frmListViewDb
- Imports System.Data.SqlClient
- Public Class frmListViewDb
- Inherits System.Windows.Forms.Form
- '定義數據庫連接對象
- Dim sdConn As New SqlConnection
- Dim conString As String = "data source=127.0.0.1;initial catalog=Northwind;uid=sa;password=123456"
- '定義記錄db2ListView執行狀態的變量
- Dim Dbr As Integer
- '定義記錄默認排序方式的變量
- Dim mySort As String = "ASC"
- '定義記錄默認排序字段的變量
- Dim myField As String = "ProductID"
- '定義記錄上次排序的字段在LISTVIEW中的列ID的變量
- Dim pOrderID As Integer = 0
- '定義復選操作的相關變量
- Dim i As Integer
- Dim sCount As Integer
- #Region " Windows 窗體設計器生成的代碼 "
- Public Sub New()
- MyBase.New()
- '該調用是 Windows 窗體設計器所必需的。
- InitializeComponent()
- '在 InitializeComponent() 調用之后添加任何初始化
- End Sub
- '窗體重寫 dispose 以清理組件列表。
- Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
- If disposing Then
- If Not (components Is Nothing) Then
- components.Dispose()
- End If
- End If
- MyBase.Dispose(disposing)
- End Sub
【編輯推薦】