Ok, i added the project to the solution and added the reference but on
second thought I think the C# Thumbnail Extractor is overkill for my needs.
I only need .jpg thumbs not excel and word ones, plus I can't for the life
of me figure out how to use the routines from the C# project in my VB.NET
project. Not smart enough!
I have however found new code which does pretty much what I want.
Pasted below for everyone's advantage.
Start with a blank form, add a listview control and imagelist control. One
thing I am stuck on is the thumbnails are 'stretched' to fit the dimensions
specified (120,120).
I need to keep within 120x120 but keep the aspect ratio intact, in other
words keep the proportions. The other task I need help with is ensuring
that when a thumbnail or multiple thumbnails are selected, then deleted,
that the listview is updated and refreshed preferably without rebuilding the
entire imagelist!
Any ideas?
Cheers,
Paul
CODE START
Const IMAGE_DIRECTORY As String = "INSERT PATH TO JPGs HERE"
Dim files As String() = Directory.GetFiles(IMAGE_DIRECTORY)
Dim max_length, i As Integer
Dim s, fname As String
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
ImageList_Load()
ListView_Load()
'Me.Controls.AddRange(New Control() {listView1})
End Sub
Private Sub ImageList_Load()
Dim pname As String
Dim myImage As Image
'Set the ColorDepth and ImageSize properties of imageList1.
imageList1.ColorDepth = ColorDepth.Depth32Bit
imageList1.ImageSize = New System.Drawing.Size(120, 120)
max_length = files.Length - 2
'Add images to imageList1.
For i = 0 To max_length
pname = Path.GetFullPath(files(i))
myImage = Image.FromFile(pname)
imageList1.Images.Add(myImage)
myImage = Nothing
Next
pname = Nothing
End Sub
Private Sub ListView_Load()
'ListView1.View = View.LargeIcon
ListView1.LargeImageList = imageList1
For i = 0 To files.Length - 2
fname = Path.GetFileName(files(i))
Dim listViewItem1 As ListViewItem = New ListViewItem(fname, i)
'Add listViewItem1 and listViewItem2.
ListView1.Items.AddRange(New ListViewItem() {listViewItem1})
listViewItem1 = Nothing
Next
End Sub
CODE END
"Herfried K. Wagner [MVP]" <hi***************@gmx.at> wrote in message
news:%2****************@TK2MSFTNGP15.phx.gbl...
"Paul" <pr*****@private.com> schrieb: I still have the C# Project, how would I build a class library to use in
my VB.NET project?
Add the C# project to the solution that contains the VB.NET project. Make
sure that the C# project is a class library project (the project type can
be changed in the project properties). Then you can add a project
reference to the C# project in your VB.NET project. To do this, select
the project in the solution explorer, choose "Add/Remove reference..."
from its context menu and select the C# project on the "Projects" tab.
--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://classicvb.org/petition/>