Управление веб-браузером vb.net, не обновляет htmltext - PullRequest
1 голос
/ 06 февраля 2012

Я погуглил по всему Китаю и до конца Южной Америки ... Кажется, я не могу найти конкретного решения этой общей проблемы.

Я разрабатываю карты Google ap,и хотите обновить карту с новыми деталями по запросу.Первоначальная проблема заключалась в том, что элемент управления веб-браузера не отражает изменения (по-прежнему сохраняет исходный htmltext) и новый текст документа и его обновление.Я понимаю, что текст документа устанавливается один раз и не может быть изменен ... очевидно.

Я пытался

navigate("about:blank") 
document.stop
document.new(true)
doevents

Все собранные знания пользователей по этой проблеме, только дайте мне половину пути,Я могу обновить страницу, используя некоторые из методов, описанных выше, но затем она дает мне ошибку сценария и ошибку 53, которая не имеет подробностей или происхождения ... просто пустые ошибки .... после нажатия в окнах ошибок мойстраница обновляется.

Может ли кто-нибудь пролить свет на прозрачный раствор.Неужели это действительно большая проблема?

PS Я не знаю, вызывают ли мои события javascript, связанные с элементом управления webbrowser, ошибки.Некоторые полагают, что ошибки связаны с загрузкой документа без закрытия / открытия всех его ссылок ...

Может кто-нибудь спасти меня от безумия.

1 Ответ

0 голосов
/ 12 февраля 2012

Луи, как ты, приятель?Я понимаю, как проблемы контроля со стороны ВБ могут стать преградой, я помогу вам, пока мы не решим эту проблему.Однако не могли бы вы рассказать мне больше о HTMLText и DocumentText и что вы подразумеваете под ними?они свойства управления ВБ?Я использую предварительный .NET WB элемент управления, это все еще в основном то же самое, но .NET один имеет несколько более причудливых свойств и методов:).

Хорошо, первое, первое, выУверены, что этот новый обмен данными не происходит внутри фрейма или фрейма?Следовательно, вы не можете увидеть какие-либо изменения в тексте HTML HTML-документа / страницы верхнего уровня?У меня есть функция, которая рекурсивно захватывает ссылки на все кадры на странице и на все кадры в этих кадрах, каждый отдельный кадр и все вложенные кадры до бесконечной глубины.Это может помочь вам.

Кроме того, что вы используете, чтобы получить текст?HTML-документ представляет собой LIVE-документ, в котором при изменении элементов DOM изменяется, и то, что вы читаете из DOM, также будет обновляться, это 100% живой документ, и пока вы декларируете свой документ какMSHTML.IHTMLDocument, тогда вы должны быть готовы.

Самое главное, я не слышал, чтобы вы упоминали .innerText, .outerText, .innerHTML и .outerHTML.Это, конечно, элементы, из которых вы хотите получать текст / источник.Если вы хотите полные страницы, проверьте эти свойства!Итак, если вы хотите, чтобы текст внутри тегов BODY, вы бы сделали следующее:

Скажем, объект IHTMLDocument называется hDoc.

MsgBox hDoc.body.innerText

Это покажет вам только текст внутритеги BODY, чтобы получить HTML-код внутри тегов BODY, просто сделайте это.

MsgBox hDoc.body.innerHTML

Теперь, если вы хотите, чтобы HTML-теги в тегах BODY одновременно извлекали начальные и закрывающие теги BODY, тогда вы 'сделайте следующее:

MsgBox hDoc.body.outerHTML

... и т. д.

Конечно, если вы хотите обновить документ по какой-либо причине, есть метод обновления элемента управления веб-браузера,это WebBrowser1.Refresh, и я думаю, что есть .Refresh2, у которого немного другая логика обновления.

Я могу продолжать и продолжать, но хотел бы знать, что я правильно понял ваш вопрос, прежде чем мы это сделаем.Теперь единственное, что меняется, - это живое изображение карты внутри элемента управления веб-браузера, не так ли?Возможно, какой-то текст вокруг него, например, адрес / и т. Д.?Или это просто изменяются данные изображения (некоторое время назад я пользовался картами Google и не знал, какую реализацию вы используете), так что, если бы вы могли сообщить мне, что именно меняется и что вы пытаетесь подобрать / прочитать,Я должен быть в состоянии помочь вам лучше, в общем, я обещаю держать вас за руку, пока мы не выясним это (смеется) - ура, приятель, дай мне знать, как это происходит.

Erx.

...