Click here to Skip to main content
13,398,338 members (35,991 online)
Click here to Skip to main content
Add your own
alternative version


40 bookmarked
Posted 26 Apr 2003

Scrollable and RatioStretch PictureBox

, 26 Apr 2003
Rate this:
Please Sign up or sign in to vote.
A scrollable and ratio-stretch picture box control


The Visual Studio.NET PictureBox control supports four behaviors of

property: Normal, StretchImage,
and CenterImage.

When I needed to use the PictureBox control it lacked two behaviors :

  1. Scrollable - The ability to use the scroll bars in order to view different areas of large image.
  2. RatioStretch - The ability to view stretched image in the same ratio (width / height) of the original image and avoids distortion of the stretched image.

The Viewer control which is available with this article supports the above two behaviors.

Note : This control supports scrolling using the mouse wheel.

Using the code

In order to use the Scrollable and RatioStretch capabilities of the Viewer control, simply add the Viewer control to your project and use it as follows :

// open an image
this.viewer1.Image = Image.FromFile(ImageFilepath);
// set mode as Scrollable
this.viewer1.ImageSizeMode = SizeMode.Scrollable;

In the sample above, we first load the image from the file specified by ImageFilepath, to the Viewer control. We then set its ImageSizeMode property to Scrollable, so that when the size of the image is greater than the visible area of the Viewer control, scrollbar(s) are added. Now, if we want the image to be displayed to fit within the Viewer control, without affecting the aspect ratio, we set the ImageSizeMode property of the Viewer control to RatioStretch as shown below:

// set mode as RatioStretch
this.viewer1.ImageSizeMode = SizeMode.RatioStretch;

That's all.


This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


About the Author

Gil Klod
Israel Israel
No Biography provided

You may also be interested in...

Comments and Discussions

Questionhow to make Size long not int Pin
maimosa6-Aug-06 4:04
membermaimosa6-Aug-06 4:04 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

Permalink | Advertise | Privacy | Terms of Use | Mobile
Web04 | 2.8.180216.1 | Last Updated 27 Apr 2003
Article Copyright 2003 by Gil Klod
Everything else Copyright © CodeProject, 1999-2018
Layout: fixed | fluid