Click here to Skip to main content
13,293,894 members (54,581 online)
Click here to Skip to main content
Add your own
alternative version


27 bookmarked
Posted 17 Jun 2008

Using ExecWB with the native .NET 2.0 WebBrowser control

, 17 Jun 2008
Rate this:
Please Sign up or sign in to vote.
How to zoom the standard WebBrowser control by accessing ExecWB.


One of the most annoyingly interesting components within the VB.NET 2008 environment is the WebBrowser control (or class, if you prefer) that is bundled as standard. It exposes a number of common methods and properties, but lacks one of the most useful elements that can be found in the full-blown web browser (a.k.a. SHDocVw or Ieframe.dll) version, namely the ExecWB command. The following class provides a simple example of how to harness the power of ExecWB from the System.Windows.Forms.WebBrowser class.


This solution came about as I researched using the WebBrowser control and stumbled into the complex world of variations on a theme. Why all of this power couldn't be harnessed in a single solution is beyond me. However, my mission is to continue simplifying a unified theory of everything (relating to the Microsoft WebBrowser).

Using the code

  1. Create a new project in VB.NET 2008
  2. Display your form in design mode
  3. Add a standard WebBrowser control, dragging it from the toolbox onto the form
  4. Change the WebBrowser's URL property in the propertygrid to something like this:
  5. Add a Button control from the toolbox onto the form
  6. Change the Text property of the Button from Button1 to Zoom
  7. Switch to the source code edit mode
  8. Replace the code, which should look like this:
Class Form1

End Class

with the following code:

Public Class Form1
Private Enum Exec
End Enum
Private Enum ExecOpt
End Enum
Private Sub Button1_Click(ByVal sender As System.Object, _
        ByVal e As System.EventArgs) Handles Button1.Click
    Dim Res As Object = Nothing
    Dim MyWeb As Object
    MyWeb = Me.WebBrowser1.ActiveXInstance
          ExecOpt.OLECMDEXECOPT_DONTPROMPTUSER, 50, IntPtr.Zero)
  Catch ex As Exception
    MsgBox("Error:" & ex.Message)
  End Try
 End Sub
End Class

Points of interest

The code above only shows the enumeration for zooming a web page. To make use of all of the OLECMDID enumeration commands, simply add them to the Enum Exec shown above. You can find all the available enumerations at MSDN.


This is the first release of this solution. If anyone has suggestions on how to make it shorter, let me know.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Rocco Labellarte
Chief Technology Officer Vobis Consulting Ltd
United Kingdom United Kingdom
I've been around since the beginning of time (well, nearly fifty years anyway), and I've enjoyed programming since the days of DOS 1.0 with assembly language, MS-BASIC, GW-BASIC, QuickBASIC, Visual BASIC and now VB.NET.

You may also be interested in...


Comments and Discussions

GeneralProblems with Web Brower Control in Vista Pin
Falcon12329-Jul-09 19:49
memberFalcon12329-Jul-09 19:49 

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
Web02 | 2.8.171207.1 | Last Updated 17 Jun 2008
Article Copyright 2008 by Rocco Labellarte
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid