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

У меня есть приложение winform, в котором есть виртуальная клавиатура. Следующий код (с textBox1 в качестве текстового поля winform отлично работает:

 protected void touchScreen1_OnUserControlButtonClicked(object sender, EventArgs e)
        {
            textBox1.Focus();
          InputSimulator inputSimulator = new InputSimulator();
          inputSimulator.Keyboard.KeyDown(WindowsInput.Native.VirtualKeyCode.NUMPAD1); 
        }

Но проблема в том, что я собираюсь печатать внутри текстового поля, которое не является элементом управления Windows Forms. Я буду вводить текстовое поле, которое является частью веб-страницы, загруженной в веб-браузер. Поэтому у меня нет контекста. Я не могу явным образом сместить акцент на это. Что я делаю? Каждый раз, когда я нажимаю виртуальную клавишу, которую я разработал, она выводит фокус из текстового поля в веб-контроле и, следовательно, не печатает.


person SamuraiJack    schedule 18.12.2017    source источник
comment
@RezaAghaei Откуда вы все это знаете? В любом случае, опубликуйте это как ответ, чтобы я мог отметить его.   -  person SamuraiJack    schedule 18.12.2017
comment
Попробуйте решение и дайте мне знать, если оно решит вашу проблему, а затем дайте мне знать, чтобы пометить его как точную копию.   -  person Reza Aghaei    schedule 18.12.2017
comment
@RezaAghaei, дублирующие отметки плохо влияют на учетную запись пользователя? Если да, то ваше решение не сработало. Если нет, ваше решение сработало безупречно: P   -  person SamuraiJack    schedule 18.12.2017
comment
@RezaAghaei Я попробовал ваше решение, и кажется, что оно хорошо работает для кнопок, но не работает для форм. Я имею в виду, что если я случайно нажму в любом месте на свободное место между кнопками, веб-браузер потеряет фокус. Хотя я добавил CommonFunctions.SetStyle(this., ControlStyles.Selectable, false);   -  person SamuraiJack    schedule 18.12.2017
comment
Ничего себе, я нашел решение этого самостоятельно. (поместил все внутри панели)   -  person SamuraiJack    schedule 18.12.2017
comment
Нет дубликата не имеет никакого плохого влияния. Это просто позволяет другим пользователям узнать, что на вопрос был дан ответ в другом связанном вопросе. Вот почему я проголосовал за ваш вопрос, потому что в будущем у кого-то еще может возникнуть такой же вопрос.   -  person Reza Aghaei    schedule 18.12.2017
comment
Что ж, в таком случае ваш ответ сработал отлично! Спасибо.   -  person SamuraiJack    schedule 18.12.2017