У вас есть веб-браузер, встроенный в диалог моего приложения Win32 C++ (без MFC, ATL и т. Д.), И я изначально установил содержимое документа из строки, содержащей некоторый код HTML. Этот HTML отображается правильно. Когда происходит событие «завершение документа», я манипулирую DOM, например. добавив текстовый узел к элементу BODY.Почему IWebBrowser2 не обновляется после изменения DOM?
Проблема заключается в том, что хотя вызов IHTMLElement::get_outerHTML
на интерфейсе элемента BODY указывает, что текстовый узел присутствует, содержимое браузера в диалоговом окне остается неизменным.
Я пробовал звонить как IWebBrowser2::Refresh
, так и ::InvalidateRect
/::UpdateWindow
, но ни один из них не помогает.
Любые идеи? При необходимости я могу разместить части своего кода.
Кроме того, кто-нибудь знает
- в принципе, обновления, нужно ли, чтобы быть каким-то образом срабатывает после изменения DOM (или он должен быть автоматическим) делает
- ли
IWebBrowser2::Refresh
смысл, когда HTML документ загруженный из строки, а не URL-адрес
Все еще надеемся на ответ на этот вопрос ... кто-нибудь?
Обновление должно быть автоматическим. Вы работаете в потоке STA и перекачиваете ли вы сообщения Windows? http://stackoverflow.com/questions/2222365/what-is-a-message-pump –