You'll get that with ListView control.
Fill ListView control:
Dim TempStr(1) As String
Dim NewNode As ListViewItem
ListView1.View = View.Details
' FullRowSelect has to be True
ListView1.FullRowSelect = True
ListView1.Columns.Clear()
ListView1.Columns.Add("Column1", 100)
ListView1.Columns.Add("Column2", 100)
ListView1.Items.Clear()
TempStr(0) = "foo"
TempStr(1) = "bar"
NewNode = New ListViewItem(TempStr)
ListView1.Items.Add(NewNode)
TempStr(0) = "another"
TempStr(1) = "item"
NewNode = New ListViewItem(TempStr)
ListView1.Items.Add(NewNode)
and check where the mouse was clicked:
Private Sub ListView1_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ListView1.MouseClick
Dim HTInfo As ListViewHitTestInfo = ListView1.HitTest(e.Location)
Dim TempStr As String
HTInfo = ListView1.HitTest(e.Location)
TempStr = HTInfo.SubItem.ToString
MessageBox.Show(TempStr, _
"SubItem", _
MessageBoxButtons.OK, _
MessageBoxIcon.Information)
End Sub
Of course you can have more than two columns if you need.
Reputation Points: 218
Solved Threads: 201
Veteran Poster
Offline 1,024 posts
since Aug 2008