views:

1179

answers:

3

I have a webrowser in my form that accesses a website that is too wide for the control. I would like to know if there is a way to resize the control to fit the website. It seems simple, but i have not found a way yet. I know how to resize the control, I just need to find the width of the website. Just like when you press the green button in safari it automatically resized the window to the correct size.

A: 
  • Step one would be to see if you can resize the control at all.
  • Step two would be to see if you can find the size that the web site would like
  • Step three would be to take that size, or the max screen size, whichever is less, minus any chrome, and resize the control to that size.
John Saunders
I know how to resize the control, I just need to get the width of the website
Good. Step two. Unfortunately, I don't know how to do that! Sorry.
John Saunders
A: 

Your best bet might be to just make the WebBrowser use as much space (Dock.Fill) as possible on the form from the get-go, so if the user full-screen maximizes the app they get plenty of space, and if they want it smaller for smaller sites they can resize your app however they want. This is how all browsers work.

Jared Updike
I already have it docked In the control.
+1  A: 

You should be able to access the size of the WebBrowser's Document and get it's size through the WebBrowser.Document.Window.Size.

I would use the WebBrowser Controls's DocumentCompleted event to wait until the page is loaded then use your resize code to resize the webControl container with this size.

Jeff Alexander