我只想在WPF RichtTextbox中得到按下的字符。
Private Sub rtb_KeyDown(sender As Object, e As System.Windows.Input.KeyEventArgs) Handles rtb.KeyDown
Dim KeyConverter As New Forms.KeysConverter
Dim S As String = KeyConverter.ConvertToString(e.Key)
End Sub但我只有keyDown事件。在Keydown上,捕捉正确的字符变得非常复杂。大写/小写和像"SHIFT“这样的特殊键是由keydown触发的,我首先需要计算到按下的键。这很复杂。因为WPF在大多数情况下不那么复杂,我会问你是否知道有什么方法可以让键盘上的按键变成字符串或字符?
问候
发布于 2011-12-21 19:55:19
尝试使用PreviewTextInput事件:
public Window7() {
this.InitializeComponent();
this.richTextBox.PreviewTextInput += new TextCompositionEventHandler(this.rtb_PreviewTextInput);
}
private void rtb_PreviewTextInput(object sender, TextCompositionEventArgs e) {
var text = e.Text;
var systemText = e.SystemText;
var controlText = e.ControlText;
var kbm = Keyboard.Modifiers;
}Private Sub richTextBox_PreviewTextInput(sender As System.Object , e As System.Windows.Input.TextCompositionEventArgs)
Dim text As String = e.Text
Dim controlText As String = e.ControlText
Dim systemText As String = e.SystemText
Dim keybm As ModifierKeys = Keyboard.Modifiers
End Sub希望这能有所帮助
发布于 2011-12-21 19:36:58
这里有一个TextInput事件可能会对你有所帮助。
https://stackoverflow.com/questions/8589083
复制相似问题