WebBrowser работа с html атрибутами

В этой статье хотелось бы показать несколько простых операций с HTML атрибутами, которые можно выполнить с помощью класса webBrowser. Надеюсь, что Вы уже работали с данным классом или одноименным элементом управления и уже знаете, как получить содержимое html страницы и как дождаться полной загрузки страницы. Поэтому сразу же переходим к основной теме статьи.

Наиболее распространенные задачи с HTML атрибутами

И так для начала создадим Windows Forms приложение, а затем добавим на форму: кнопку, элемент управления webBrowser (wb) и textBox, в который будем выводить изменения, которые произойдут в документе. После чего создадим небольшую, простенькую HTML страницу, которую будем использовать, в качестве шаблона для приведенных ниже примеров.

Здесь же помещу код, который необходимо добавить и выполнить в самом начале любого примера, чтобы получить все HTML элементы с тэгом «p».

Так же обратите внимание, для того чтобы найти, создать, изменить или добавить атрибут class, Вам всегда необходимо указывать имя classname, более подробно об этом можно прочитать здесь.

Если Вам нужно проверить или убедиться в том, что в HTML документе действительно произошли какие-то изменения, то в самом конце любого из примеров добавьте строку, которая позволяет вывести содержимое тега body.

Порядок действий:

  • Поиск элементов с тегом p
  • Код с каким-либо действием над HTML атрибутом
  • Вывод изменений в textBox

Ну, а теперь переходим к задачам.

Как добавить HTML атрибут

В классе webBrowser существует универсальный метод SetAttribute, с помощью которого Вы можете: создать, изменить, удалить или добавить HTML атрибут. Данный метод принимает два параметра: имя атрибута и его значение. Рассмотрим несколько простых примеров.

Добавление нового атрибута по имени class к элементу с тегом «p».

Результат

создание атрибута

Если у элемента уже присутствует html атрибут, но его имя отличается от того имени атрибута, который Вы хотите добавить, то в таком случае так же будет создан и добавлен новый HTML атрибут. Например, внесём небольшое изменение в наш шаблон:

Снова выполним выше описанный код и получим следующий результат:

добавление атрибута

Если же при добавлении нового HTML атрибута имена совпадают, то тогда изменяется значение у существующего атрибута.

Выполним тот же самый код и посмотрим на результат.

Как изменить HTML атрибут

Как уже говорилось чуть ранее, для того, чтобы изменить HTML атрибут, нужно так же воспользоваться методом SetAttribute. Например, снова сделаем небольшое изменение в шаблоне:

А затем изменим текущее значение атрибута class.

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

изменение атрибута

Если Вам нужно изменить название атрибута, то тогда Вам сначала нужно создать новый атрибут, а затем удалить старый или наоборот.

Как удалить HTML атрибут

Для того чтобы удалить HTML атрибут, нужно в метод SetAttribute, в качестве второго параметра, передать пустое значение, например, снова не много изменим наш шаблон.

Код:

Результат:

удаление атрибута

Как получить значение атрибута

Чтобы получить значение HTML атрибута необходимо воспользоваться методом GetAttribute, в который необходимо передать имя атрибута. Например, сделаем небольшое изменение в шаблоне.

А затем получим значение атрибута.

Результат: left.

На этом всё, если есть вопросы, то оставляйте их в комментариях.

Читайте также:

Похожие темы

HTTP Digest Аутентитфикация | Web Application Pent... Привет колеги. Добро пожаловать на курс Web Application Pentesting. В этой статье мы с вами поговорим о: Дайджест(Цифровой) Аутентификации. Попыт...
Control WebBrowser. Часть 2: События Control WebBrowser. Часть 2: События В предыдущей статье было продемонстрировано, как получить данные в виде html страницы и вывести их в окно элемен...
Web Application Pentesting | Атаки на HTTP Basic A... Привет колеги. Добро пожаловать на курс Web Application Pentesting. В этой статье мы с вами поговорим о: Вспомним немного заголовки ответа серв...
c# Создание веб-сервера (дополнение)... Создание веб-сервера на языке c# (дополнение) Данная статья является дополнением к предыдущей статье: как создать веб-сервер с помощью языка c#. В не...
c# Как быстро найти ссылки на сайте?... Как найти ссылки на сайте? Сегодня на простом примере я хочу показать Вам, как можно быстро найти ссылки на сайте с помощью элемента управления WebBro...