Web浏览器控件调整大小
我的表单中有一个 WebBrowser,它访问的网站对于控件来说太宽了。 我想知道是否有办法调整控件大小以适应网站。 看起来很简单,但我还没有找到方法。 我知道如何调整控件的大小,我只需要找到网站的宽度。 就像当您按下 Safari 中的绿色按钮时,它会自动将窗口大小调整为正确的大小。
I have a WebBrowser 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.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
您应该能够访问 WebBrowser 文档的大小并通过 WebBrowser.Document.Window.Size 获取其大小。
我将使用 WebBrowser Controls 的 DocumentCompleted 事件等待页面加载,然后使用调整大小代码来调整 webControl 容器的大小。
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.
此处回答:使用
WebBrowser.Document.Body.ScrollRectangle.Size
而不是WebBrowser。文档.窗口.大小
。 工作对我来说就像一种魅力。Answered here: use
WebBrowser.Document.Body.ScrollRectangle.Size
instead ofWebBrowser.Document.Window.Size
. Working like a charm for me.您最好的选择可能是让 WebBrowser 从一开始就在表单上使用尽可能多的空间 (Dock.Fill),因此,如果用户全屏最大化应用程序,他们将获得足够的空间,并且如果他们想要对于较小的网站来说,它更小,他们可以根据需要调整您的应用程序的大小。 所有浏览器都是这样工作的。
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.