first ,thanks for zxhtgh's explanation,this method has little bug,anything else,when i put it into VS 2003 to debug,so some property and some method are not found ,like ColumnHeaderCollection.why?
'定义 _IsChangeFace(为T时,ListView结构按SQL语句刷新;为F时,ListView结构需要自定义)
Dim _IsChangeFace As Boolean = flase
Private _objConnection As OleDb.OleDbConnection
'*建立连接
Private Function Connection(ByVal strConnection As String) As Boolean
Try
_objConnection = New OleDb.OleDbConnection(strConnection)
_objConnection.Open()
Catch ex As Exception
MessageBox.Show("登陆数据库失败...", "错误")
Return False
End Try
Return True
End Function
'*断开连接
Private Sub Disconnection()
Try
_objConnection.Close()
_objConnection = Nothing
Catch ex As Exception
End Try
End Sub
Private Sub Wirte(ByVal objListView as ListView, ByVal StrConnection As String, ByVal strSQL As String) '目标ListView,连接字,SQL语句
Connection(StrConnection)
Dim mDataAdapter As New OleDb.OleDbDataAdapter
Dim mDataSet As New DataSet
Try
mDataAdapter.SelectCommand = New OleDb.OleDbCommand
mDataAdapter.SelectCommand.Connection = _objConnection
mDataAdapter.SelectCommand.CommandText = strSQL
mDataAdapter.SelectCommand.CommandType = CommandType.Text
mDataAdapter.SelectCommand.ExecuteNonQuery()
mDataAdapter.Fill(mDataSet)
objListView.Items.Clear()
'改变外观
If objListView._IsChangeFace Then
objListView.Columns.Clear()
Dim ColumnName As DataColumn
Dim ColumnNames As DataColumnCollection = mDataSet.Tables(0).Columns
objListView.Columns.Add("序号", 50, HorizontalAlignment.Center)
For Each ColumnName In ColumnNames
objListView.Columns.Add(ColumnName.Caption, 100, HorizontalAlignment.Center)
Next
End If
Dim index As Integer = 0
Dim objItem As ListViewItem
Dim mDataRow As DataRow
Dim Column As ColumnHeader
Dim Columns As ColumnHeaderCollection = objListView.Columns
For Each mDataRow In mDataSet.Tables(0).Rows
index += 1
objItem = objListView.Items.Add(index)
For Each Column In Columns
If Column.Text = "序号" Then
ElseIf Column.Text.ToLower = "id" Then
objItem.Tag = mDataRow(Column.Text)
Else
objItem.SubItems.Add(mDataRow(Column.Text).ToString)
End If
Next
Next
Catch ex As Exception
MsgBox(ex.Message)
End Try
mDataAdapter.Dispose()
mDataAdapter = Nothing
Disconnection()
End Sub