Страница: 1 |
Страница: 1 |
Вопрос: Проблемы с AddHandler/ Handles
Добавлено: 28.05.09 06:39
Автор вопроса: Slonya
Помогите, пожалуйста, разрешить проблему.
Прекращается выполнение посередине процедуры - обработчика события и начинается заново выполнение процедуры сначала при использовании AddHandler/ Handles.
Вот код
Private Sub CheckNumberOfMinute() Handles WebBrowser1.DocumentCompleted
Dim dText As String
Dim StartFigure As Integer
Dim FinishFigure As Integer
Dim NoInfo As Boolean = False
If WebBrowser1.Url = New Uri(IMDBAddress & Link(MovieNumber)) Then
dText = WebBrowser1.DocumentText
StartFigure = 13
If dText.Substring(InStr(dText, "Runtime:")) <> 0 Then NoInfo = True
И так далее...
Последний if не выполняется, начинается выполнение процедуры заново. Вообще говоря заново выполняется процедура по сколько-то раз и в обычной ситуации, когда процедура (с другим кодом) выполняется до конца, так что здесь тоже ситуация не ясна.
Буду благодарен за разрешение ситуации.
Ответы
Всего ответов: 5
Номер ответа: 1
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 28.05.09 11:38
Видимо, здесь дело в том, что ты меняешь у WebBrowser1 URL, что приводит к перезагрузке документа и новому вызову обработчика.
Номер ответа: 2
Автор ответа:
Slonya
Вопросов: 1
Ответов: 2
Профиль | | #2
Добавлено: 28.05.09 20:56
Нет, переделал вот так, не помогло.
По прежнему, после невыполнения последнего if'a начинает выполнять заново
Номер ответа: 3
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #3
Добавлено: 29.05.09 11:28
Чудес на свете не бывает! Если начинается повторная загрузка, значит что то заставляет документ загружаться заново. Вполне может быть что это вовсе не в этом коде а в соседней процедуре.. В любом случае - это твой косяк. Желаешь в этом убедиться - создай чистый проект,добавь WebBrowser1 и загрузизи страницу и сразу все станет на свои места. Если событие срабатывает 1 раз - косяк в коде, иначе на странице есть либо фреймы,либо редирект либо refresh и т.д.. причин может быть туча.. и все они при определенных условиях заставят страницу перезагрузиться..
Еще, как вариант, посмотри в каком коде у тебя вызывается AddHandler(возможно ты это в цикле делаешь). Если ты несколько раз вешаешь обработчик события то и вызываться этот обработчик будет столько же раз.. Вообщем ищи косяк, по любому он у тебя в коде.
Номер ответа: 4
Автор ответа:
Slonya
Вопросов: 1
Ответов: 2
Профиль | | #4
Добавлено: 01.06.09 16:01
Спасибо, нашел косяк
Номер ответа: 5
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #5
Добавлено: 01.06.09 16:43