2016-03-24 7 views
0

キーイベントではなく、キー列挙型でキーを検出ではなく、キーのEnumに多くのキーがあるようだ(リンクを参照してください)たちは、キーイベントを使用して</p> <pre><code>private void KeyUp_Or_KeyDown_Event(object sender, KeyEventArgs e) { if (e.Key==Key.SomeKey) //detect key { //do something } } </code></pre> <p>をキー入力を検出することができます

https://msdn.microsoft.com/en-us/library/system.windows.input.key(v=vs.110).aspxこのようように '\'、 '['、 ']'、 '`'、 '=' となど

キー列挙型でキーを検出しないために、任意の方法?

たとえば、テイクボックスをテイクします。 ユーザーがテキストボックスに多くのランダムなテキストを入力しても、いつでもユーザーが割り当てキーを押して検出できます。

+0

代わりにKeyPressのキーを検出します。 –

答えて

1

クイックテストアプリケーションを作成して、探しているキーのキー値を確認します。

<Window x:Class="WpfApplication1.MainWindow" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     Title="MainWindow" Height="350" Width="525" KeyDown="Window_KeyDown"> 
    <TextBlock Name="MyTextBlock">Hit a key</TextBlock> 
</Window> 

の背後にあるコード:

public partial class MainWindow : Window 
{ 
    public MainWindow() 
    { 
     InitializeComponent(); 
    } 

    private void Window_KeyDown(object sender, KeyEventArgs e) 
    { 
     MyTextBlock.Text = Enum.GetName(typeof(System.Windows.Input.Key), e.Key); 
    } 
} 

その後のコードが何であるかを見るためのキーで離れて強打。

+0

良い仕事、すべてのキーがKey Enumにあることがわかりました。私はenumでキー名を知らないだけではないと思います。 –

関連する問題

 関連する問題