RoutedEvents: Key Press Events : RoutedCommand « Windows Presentation Foundation « VB.Net Tutorial






<Window x:Class="RoutedEvents.KeyPressEvents"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="KeyPressEvents" Height="400" Width="400" >
    <StackPanel>
          <DockPanel Margin="5">
            <TextBlock Margin="3" >Type here:</TextBlock>
            <TextBox PreviewKeyDown="KeyEvent" KeyDown="KeyEvent" 
                     PreviewKeyUp="KeyEvent" KeyUp="KeyEvent"
                     PreviewTextInput="TextInput"
                     TextChanged="TextChanged"></TextBox>
          </DockPanel>
      <ListBox Margin="5" Name="lstMessages"></ListBox>
      <CheckBox Margin="5" Name="chkIgnoreRepeat">Ignore Repeated Keys</CheckBox>
      <Button Click="cmdClear_Click" HorizontalAlignment="Right">Clear List</Button>
    </StackPanel>
</Window>


//File:Window.xaml.vb
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Data
Imports System.Windows.Documents
Imports System.Windows.Input
Imports System.Windows.Media
Imports System.Windows.Media.Imaging
Imports System.Windows.Shapes

Namespace RoutedEvents
  Public Partial Class KeyPressEvents
    Inherits System.Windows.Window
    Public Sub New()
      InitializeComponent()
    End Sub

    Private Sub KeyEvent(sender As Object, e As KeyEventArgs)
      If CBool(chkIgnoreRepeat.IsChecked) AndAlso e.IsRepeat Then
        Return
      End If

      Dim message As String = "Event: " & Convert.ToString(e.RoutedEvent) & " " & " Key: " & Convert.ToString(e.Key)
      lstMessages.Items.Add(message)
    End Sub

    Private Sub TextInput(sender As Object, e As TextCompositionEventArgs)
      Dim message As String = "Event: " & Convert.ToString(e.RoutedEvent) & " " & " Text: " & e.Text
      lstMessages.Items.Add(message)
    End Sub

    Private Sub TextChanged(sender As Object, e As TextChangedEventArgs)
      Dim message As String = "Event: " & Convert.ToString(e.RoutedEvent)
      lstMessages.Items.Add(message)
    End Sub

    Private Sub cmdClear_Click(sender As Object, e As RoutedEventArgs)
      lstMessages.Items.Clear()
    End Sub
  End Class
End Namespace
WPF Routed Events Key Press Events








16.92.RoutedCommand
16.92.1.Create a custom RoutedCommand, the CommandBinding objects, and the KeyBinding objects in code.Create a custom RoutedCommand, the CommandBinding objects, and the KeyBinding objects in code.
16.92.2.Convert RoutedEventArgs.OriginalSource to event senderConvert RoutedEventArgs.OriginalSource to event sender
16.92.3.RoutedEvents: Button Mouse Up EventRoutedEvents: Button Mouse Up Event
16.92.4.RoutedEvents: Drag And DropRoutedEvents: Drag And Drop
16.92.5.RoutedEvents: Focus eventRoutedEvents: Focus event
16.92.6.RoutedEvents: Key ModifiersRoutedEvents: Key Modifiers
16.92.7.RoutedEvents: Key Press EventsRoutedEvents: Key Press Events
16.92.8.RoutedEvents: Mouse PositionRoutedEvents: Mouse Position
16.92.9.Bubble routed events, and write an event handler for a routed event.Bubble routed events, and write an event handler for a routed event.
16.92.10.Get RoutedEvent NameGet RoutedEvent Name
16.92.11.Create RoutedCommand from InputGestureCollectionCreate RoutedCommand from InputGestureCollection
16.92.12.RoutedEvents Only NumbersRoutedEvents Only Numbers
16.92.13.Routed Event DemoRouted Event Demo