By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
449,137 Members | 1,311 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 449,137 IT Pros & Developers. It's quick & easy.

Not appeared icons in the listview in VB.NET

P: n/a
Hi

I have one application ,that diplays data from database
into the listview control.While adding data to the
listview i want to display an icon to the leftside of the
first column's data.Here is my code, but icon is not
apperead with that code.
Source code
---------------

Private Sub Button7_Click(ByVal sender As System.Object,
ByVal e As System.EventArgs) Handles Button7.Click
InitializeListView()
LoadList()
End Sub

Public Sub InitializeListView()
ListView1.View = View.Details
ListView1.LabelEdit = True
' Allow the user to rearrange columns.
ListView1.AllowColumnReorder = True

' Select the item and subitems when selection is
made.
ListView1.FullRowSelect = True
' Display grid lines.
ListView1.GridLines = False

' Sort the items in the list in ascending order.
ListView1.Sorting = SortOrder.Ascending

' Attach Subitems to the ListView

ListView1.Columns.Add("WebpageURL", 200,
HorizontalAlignment.Left)
ListView1.Columns.Add("Links", 70,
HorizontalAlignment.Left)
ListView1.Columns.Add("Emails", 70,
HorizontalAlignment.Left)
ListView1.Columns.Add("Comments", 100,
HorizontalAlignment.Left)
'ListView1.Columns.Add(" ", ,
HorizontalAlignment.Left)

' imageListSmall.Images.Add(Bitmap.FromFile
("C:\MySmallImage2.bmp"))
' Add the list items to the ListView

' The ListViewItemSorter property allows you to
specify the
' object that performs the sorting of items in the
ListView.
' You can use the ListViewItemSorter property in
combination
' with the Sort method to perform custom sorting.
'_lvwItemComparer = new ListViewItemComparer()
'Dim _lvwItemComparer As New
ListViewItemConverter ' ListViewItemComparer
'Me.ListView1.ListViewItemSorter = _lvwItemComparer
End Sub
Public Sub LoadList()

Dim str As String
Dim i As Integer
Dim b(100) As String
Dim strimg As String
str = Application.StartupPath & "\Email.mdb"
con.ConnectionString
= "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= '" & str
& "' ;Persist Security Info=False"
con.Open()
cmd.Connection = con
cmd.CommandText = "select * from URL"
cmd.CommandType = CommandType.Text

da.SelectCommand = cmd
da.Fill(ds, "URL")

' Get the table from the data set
Dim dtable As DataTable = ds.Tables("URL")

' Clear the ListView control
ListView1.Items.Clear()

' Display items in the ListView control
Dim dr As DataRow
Dim imageListSmall As New ImageList
Dim imageListLarge As New ImageList

For i = 0 To dtable.Rows.Count - 1 Step i + 1
Dim drow As DataRow = dtable.Rows(i)

' Only row that have not been deleted
If drow.RowState <> DataRowState.Deleted Then

' Define the list items
Dim lvi As ListViewItem = New ListViewItem
(drow("WebpageURL").ToString())
lvi.SubItems.Add(drow("Links").ToString())
lvi.SubItems.Add(drow("Emails").ToString())
lvi.SubItems.Add(drow("Comments").ToString
())
lvi.SubItems.Add(drow("image").ToString())

' Initialize the ImageList objects with
bitmaps.
imageListSmall.Images.Add(Bitmap.FromFile
("D:\Project-EmailExtractor\EmailExtractor20-9-04
\WindowsApplication1\bin\play.ico"))
'imageListSmall.Images.Add(Bitmap.FromFile
("C:\MySmallImage2.bmp"))
'' Add the list items to the ListView
ListView1.LargeImageList = imageListLarge
ListView1.SmallImageList = imageListSmall
ListView1.Items.Add(lvi)

' ListView1.Items(0).ImageIndex = 1
End If
Next
End Sub
Nov 21 '05 #1
Share this Question
Share on Google+
1 Reply


P: n/a
On Fri, 8 Oct 2004 02:44:56 -0700, "Mamatha" <ma***********@yahoo.com>
wrote:
For i = 0 To dtable.Rows.Count - 1 Step i + 1
Dim drow As DataRow = dtable.Rows(i)

' Only row that have not been deleted
If drow.RowState <> DataRowState.Deleted Then

' Define the list items
Dim lvi As ListViewItem = New ListViewItem
(drow("WebpageURL").ToString())
lvi.SubItems.Add(drow("Links").ToString())
lvi.SubItems.Add(drow("Emails").ToString())
lvi.SubItems.Add(drow("Comments").ToString
())
lvi.SubItems.Add(drow("image").ToString())

' Initialize the ImageList objects with
bitmaps.
imageListSmall.Images.Add(Bitmap.FromFile
("D:\Project-EmailExtractor\EmailExtractor20-9-04
\WindowsApplication1\bin\play.ico"))
'imageListSmall.Images.Add(Bitmap.FromFile
("C:\MySmallImage2.bmp"))
'' Add the list items to the ListView
ListView1.LargeImageList = imageListLarge
ListView1.SmallImageList = imageListSmall
ListView1.Items.Add(lvi)

' ListView1.Items(0).ImageIndex = 1
End If
Next


not looked at it closley but shouldn't the third line from the end:

ListView1.Items(0).ImageIndex = 1

actually be:

lv.ImageIndex = imageListSmall.Images.Count - 1

I think you are adding the image to the image collection when you
create the list view item, therefore the image you want to use should
be the last one to be added... hence setting it to the last image to
be added to the colleciton.

What you are actually doing it setting the first item in the listview
to the second image in the collection each time you add a new listview
item.

Cheers

Blu
Nov 21 '05 #2

This discussion thread is closed

Replies have been disabled for this discussion.