Я встроил Web-браузер .NET в форму, имеющую некоторые другие кнопки.
Разрабатываемое мной приложение не использует клавиатуру, но использует сенсорный экран. Так что на самом деле он использует только мышь. Чтобы прокрутить веб-браузер вниз, я сделал две пользовательские кнопки. Когда я нажимаю эти кнопки, он должен отправить браузеру нажатие клавиши «PageDown», и браузер должен прокрутить вниз.
Таким образом, код события click выглядит следующим образом:
theForm.Activate();
Application.DoEvents();
theBrowser.Focus();
Application.DoEvents();
SendKeys.Send(key);
Где 'theForm' - это форма, а 'theBrowser' - это экземпляр браузера.
Поэтому, когда я нажимаю кнопку, ничего не происходит. Когда я сначала нажимаю на браузер, а затем нажимаю кнопку, он работает. Но я уделяю этому внимание, верно? И я дал приложению достаточно места, чтобы установить фокус?
Но теперь то, что я считаю странным. Когда я ставлю MessageBox.Show ("HELLO"); в коде вот так:
theForm.Activate();
Application.DoEvents();
theBrowser.Focus();
MessageBox.Show("HELLO");
Application.DoEvents();
SendKeys.Send(key);
... работает сразу после нажатия кнопки.
& NBSP
Таким образом, вопрос заключается в следующем: почему этот код не работает, когда я оставляю MessageBox.Show (), а работает, когда я использую MessageBox.Show ()?
Надеюсь, вы можете помочь, заранее спасибо ...