используйте mshtml HTMLDocument для изменения DOM и отображения в расширении браузера IE / BHO - PullRequest
1 голос
/ 17 июня 2011

Я работаю с C # .NET: mshtml.HTMLDocument, mshtml.HTMLImg и т. Д.

Я пытаюсь изменить DOM и отразить изменения в браузере. например

           HTMLDocument doc = WebBrowser.Document as HTMLDocument;
           HTMLImg img;
           for (int i = 0; i < doc.images.length; i++)
           {
               img = doc.images.item(i) as HTMLImg;
               ProcessImg(ref img);                   
           }

К сожалению, обработанное / измененное изображение не отображается в браузере. Я полагаю, что Ineed я хочу сохранить изображение локально и изменить атрибут src тега IMG. Но кроме того, что я не смог (помогите, пожалуйста!) Сделать это, я боюсь, что это не будет отображаться. Как сказать браузеру обновить (при необходимости вообще)

Ура, ребята! Берт Какой подход вы бы выбрали?

Ответы [ 2 ]

1 голос
/ 17 июня 2011

Правильно, вы не можете изменить существующее изображение без изменения атрибута SRC.Вы должны поделиться своим нерабочим кодом для этого, чтобы люди могли его увидеть.

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

0 голосов
/ 14 сентября 2012

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

В основном, класс реализует IObjectWithSite и IOleCommandTarget, первый из которых позволяет вашему коду подписаться на действие просмотра, а второй подключает действие пользовательского интерфейса. Код в примере ссылки устанавливает / очищает HTMLDocument, который является фактическим документом, который вы хотите изменить.

редактировать : Я думаю, что, несмотря на внешний вид, HTMLDocument находится не в пространстве имен mshtml, а на самом деле в System.Windows.Forms. R # говорит иначе, но все пространство имен mshtml похоже на упражнение в неправильном направлении путем косвенного перенаправления и нарушения пищеварения, добавленных для хорошей меры.

...