2012-02-07 1 views
1

Я хочу получить входное значение элемента <input type="text">, «на лету» (при его вводе) и реализовать с ним метод поиска с параметром.WatiN, выбирая правильную строку события для использования с FireEventNoWait для текстового поля ввода

У меня есть этот кусок кода:

_window.Frame(WatiN.Core.Find.ById("a_frame")) 
    .TextField(WatiN.Core.Find.ById("an_element")) 
    .FireEventNoWait("event_string", other params); 

Какое событие вы думаете, это лучше всего подходит для этого? У меня есть некоторые мысли по поводу KeyPressed или KeyUp, но я хотел бы получить некоторые другие мнения по этому вопросу? Я искал TextChanged и некоторые аналогичные Event, но я ничего не нашел.

ответ

0

Можно ли предположить, что вышеуказанный код не работает, или? Если ничего не работает, вы всегда можете сделать сделать петлю сразу после текстовое поле получает фокус, сделать цикл будет содержать следующие:

Sleep 100 
Doevents 

И, конечно, после того, как через каждые 100 мс перерыв и DoEvents, вы можете проверить, если .value изменилось, и если да, запросите свой поиск. Когда текстовое поле теряет фокус, вы останавливаете цикл.

Вы используете кнопку управления веб-браузером, верно? И вы хотите, чтобы это использовало элемент управления webbrowser, а не JavaScript? Потому что вы можете получить события keydown keydown через систему управления веб-браузером, и это будет лучший способ сделать это, но я не знаю, кто, когда, где, почему, что вы делаете :)

+1

Ну, функциональность проекта уже не такая, но я думаю, что она все равно будет работать. Проект далек от этого, поэтому у меня нет возможности попробовать ваше решение, извините ... :( – iCantSeeSharp

+0

@Souvlaki означает ли это, что проблема решена или что решение больше не нужно? если у вас есть другие вопросы, дайте мне знать. –

+0

Мне не нужен этот кусок кода, я его переработал. Поэтому я не могу проверить решение. Спасибо за ваш интерес. – iCantSeeSharp

Смежные вопросы