Member 13384819 Ответов: 1

Как я могу программно прокручивать нижнюю часть веб-браузера C#


Уважаемые Все.

Пожалуйста, поддержите меня, чтобы прокрутить нижнюю часть веб-браузера.

Что я уже пробовал:

метода webbrowser1.AutoScrollOffset = новая точка(метода webbrowser1.Расположение.Х ,метода webbrowser1.Расположение.Y );

OriginalGriff

Это не очень хороший вопрос - мы не можем понять из этого малого, что вы пытаетесь сделать.
Помните, что мы не можем видеть ваш экран, получить доступ к вашему жесткому диску или прочитать ваши мысли - мы получаем только то, что вы печатаете для работы.
Используйте виджет "улучшить вопрос", чтобы отредактировать свой вопрос и предоставить более подробную информацию.

Member 13384819

Жаль, что,
у меня есть одно приложение windows , которое будет загружать файлы из системной папки в веб-браузер, работая нормально. но проблема в том, что я не могу прокрутить вниз программно (конец документа), Пожалуйста, поддержите...


BillWoodruff

Винформ ? WPF ? или ?

Опишите, какую версию WebBrowser, FrameWork и C# вы используете.

Member 13384819

использование frameWork 4.0 в Visual Studio 2010

1 Ответов

Рейтинг:
1

Sandeep Mewara

Попробуй:

webBrowser.Document.Body.ScrollIntoView(false);

Логический параметр для ScrollIntoView() есть true чтобы выровнять полосу прокрутки с верхней частью документа, и false чтобы выровнять полосу прокрутки с нижней частью документа.

Документация MSDN здесь: Объект HTMLElement.ScrollIntoView[^]
Пример:
private void ScrollToElement(string ElemName)
{
    if ((WebBrowser1.Document != null))
    {
        {
            var withBlock = WebBrowser1.Document;
            HtmlElementCollection Elems = withBlock.All.GetElementsByName(ElemName);
            if ((!Elems == null & Elems.Count > 0))
            {
                HtmlElement Elem = Elems(0);

                Elem.ScrollIntoView(true);
            }
        }
    }
}

Если это не сработает, попробуйте ScrollTo:
private void ScrollMessageIntoView()
{
 // MOST IMP : processes all windows messages queue
 System.Windows.Forms.Application.DoEvents();
 
 if (webBrowserControlRcdMsg.Document != null)
 {
    webBrowserControlRcdMsg.Document.Window.ScrollTo(0,
    webBrowserControlRcdMsg.Document.Body.ScrollRectangle.Height);
 }
}

Ссылка: Выделите элемент управления WebBrowser вниз | место для C шулеров/.Промысловые суда[^]


Member 13384819

Спасибо за код, оба я пробовал, но не работает, какой-нибудь другой способ сделать это?