c# Пауза между sendkeys

Я делаю некоторую автоматизацию на веб-странице на основе Java, которая должна выполнять некоторую проверку между записями, поэтому я подумал, что просто сделаю Thread.Sleep между каждым SendKeys.Send, но по какой-то причине он просто спит в течение 10 секунд (10 x 1 сек. паузы) при загрузке страницы, а затем просматривает всю форму без пауз между каждым нажатием клавиши.

У кого-нибудь есть идеи, почему это делается, или какие-либо предложения по альтернативному способу достижения паузы между ключами отправки?

Thread.Sleep(1000);
SendKeys.Send("{TAB}");
Thread.Sleep(1000);
SendKeys.Send(strTEST);

это на мероприятии browser_DocumentCompleted


person rs82uk    schedule 09.06.2011    source источник
comment
Вам нужно будет показать код для помощи в этом. должна быть возможна пауза между клавишами отправки.   -  person BugFinder    schedule 09.06.2011
comment
Никакой код не может выполняться в вашем потоке пользовательского интерфейса, пока вы переводите его в спящий режим. В браузере тоже нет.   -  person Hans Passant    schedule 10.06.2011


Ответы (1)


Чтобы сделать паузу, вы хотите использовать функцию SendWait вместо SendKeys: http://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys.sendwait(v=VS.90.aspx

SendKeys ставит в очередь все ключи и обрабатывает их позже, как вы видите. SendWait обрабатывает их и возвращает.

person Ed Bayiates    schedule 09.06.2011