Super Dave
New member
- Joined
- Jul 3, 2009
- Messages
- 4
- Programming Experience
- 3-5
I'm trying to convert a C# project to vb CodeProject: Image Thumbnail Viewer with .NET 2.0. Free source code and programming help
The one thing that has me stumped is the conversion of a routine to add thumbnails to a layout panel.
A global event is declaired
Public Event OnImageSizeChanged As ThumbnailImageEventHandler
Then a section where each thumbnail image image is added with a size changed event for when a slider control is moved.
It looks like just a big multicast delegate where each image control is chained to the slider. So any change in the size slider changes each thumbnail image controls size.
C# original code:
this.OnImageSizeChanged += new ThumbnailImageEventHandler(imageViewer.ImageSizeChanged);
I assume that the += is shorthand for the System.Delegate.Combine
The problem is any attempt to have OnImageSizeChanged equal anything shows an error that says I must use a raiseevent.
How should this be changed to work in vb?
Regards,
Super Dave
Original C#
private void AddImage(string imageFilename)
{
// thread safe
if (this.InvokeRequired)
{
this.Invoke(m_AddImageDelegate, imageFilename);
}
else
{
int size = ImageSize;
ImageViewer imageViewer = new ImageViewer();
imageViewer.Dock = DockStyle.Bottom;
imageViewer.LoadImage(imageFilename, 256, 256);
imageViewer.Width = size;
imageViewer.Height = size;
imageViewer.IsThumbnail = true;
imageViewer.MouseClick += new MouseEventHandler(imageViewer_MouseClick);
this.OnImageSizeChanged += new ThumbnailImageEventHandler(imageViewer.ImageSizeChanged);
this.flowLayoutPanelMain.Controls.Add(imageViewer);
}
}
The one thing that has me stumped is the conversion of a routine to add thumbnails to a layout panel.
A global event is declaired
Public Event OnImageSizeChanged As ThumbnailImageEventHandler
Then a section where each thumbnail image image is added with a size changed event for when a slider control is moved.
It looks like just a big multicast delegate where each image control is chained to the slider. So any change in the size slider changes each thumbnail image controls size.
C# original code:
this.OnImageSizeChanged += new ThumbnailImageEventHandler(imageViewer.ImageSizeChanged);
I assume that the += is shorthand for the System.Delegate.Combine
The problem is any attempt to have OnImageSizeChanged equal anything shows an error that says I must use a raiseevent.
How should this be changed to work in vb?
Regards,
Super Dave
Original C#
private void AddImage(string imageFilename)
{
// thread safe
if (this.InvokeRequired)
{
this.Invoke(m_AddImageDelegate, imageFilename);
}
else
{
int size = ImageSize;
ImageViewer imageViewer = new ImageViewer();
imageViewer.Dock = DockStyle.Bottom;
imageViewer.LoadImage(imageFilename, 256, 256);
imageViewer.Width = size;
imageViewer.Height = size;
imageViewer.IsThumbnail = true;
imageViewer.MouseClick += new MouseEventHandler(imageViewer_MouseClick);
this.OnImageSizeChanged += new ThumbnailImageEventHandler(imageViewer.ImageSizeChanged);
this.flowLayoutPanelMain.Controls.Add(imageViewer);
}
}