Пользовательский элемент управления Windows Forms: клавиши фокуса и курсора без UIPermissionWindow.AllWindows - PullRequest
0 голосов
/ 31 августа 2010

Я хочу написать пользовательский элемент управления (текстовый редактор) для Windows Forms, который должен включать следующие функции:

  • Получает фокус клавиатуры, когда вы щелкаете по нему мышью
  • Видит весь ввод с клавиатуры (включая клавиши курсора), когда он имеет фокус,
  • Может работать в среде с полужестким доверием, с UIPermissionWindow.SafeTopLevelWindows (то есть не требует UIPermissionWindow.AllWindows)

Есть ли такой пример?

Некоторые из методов, которые я мог бы использовать, например Control.Focus() и Control.InInputKey(), требуют UIPermissionWindow.AllWindows.

Есть ли другой способ получить / реализовать функциональность, не используя эти методы?

Эта функция встроена в элемент управления TextBox (получает фокус и обрабатывает клавиши курсора).

1 Ответ

1 голос
/ 31 августа 2010
Public Class UserControl1
    Inherits TextBox

    Private Sub UserControl1_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.GotFocus

    End Sub

    Private Sub UserControl1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
        Debug.WriteLine("downed")
        Debug.WriteLine(e.KeyValue)
        Debug.WriteLine(e.KeyCode)

    End Sub

    Private Sub UserControl1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress
        Debug.WriteLine("pressed")
        Debug.WriteLine(e.KeyChar)
    End Sub
End Class
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...