滚动到WebBrowser控件的顶部

时间:2011-03-02 01:24:05

标签: c# .net winforms webbrowser-control

如何滚动到网络浏览器控件的顶部。我加载的页面有一个iframe,滚动条开始向下20px。它只发生在我的应用程序中。我想自动滚动到顶部。

2 个答案:

答案 0 :(得分:2)

快速搜索结果:webBrowser1.Document.Window.ScrollTo(0, 200);

答案 1 :(得分:1)

如果您的意思是想将iframe的内容滚动到顶部,则以下内容应该有所帮助。

首先你需要两件事:

  1. 添加对 C:\ Program Files \ Microsoft.NET \ Primary Interop Assemblies \ Microsoft.mshtml.dll
  2. 的引用
  3. 修改您的<iframe>代码,使其具有ID,例如:id="something"
  4. 最后,代码:

    HtmlElement ele = webBrowser1.Document.GetElementById("something");
    mshtml.HTMLIFrameClass frame = ele.DomElement as mshtml.HTMLIFrameClass;
    if (frame != null)
    {
        mshtml.HTMLDocumentClass doc = frame.document as mshtml.HTMLDocumentClass;
        if (doc != null)
        {
            object i = 0;
            mshtml.HTMLWindow2Class win = doc.frames.item(ref i) as mshtml.HTMLWindow2Class;
            if(win != null)
                win.scrollTo(0, 0);
        }
    }