Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# WPF始终关注文本框_C#_Wpf_Textbox_Focus - Fatal编程技术网

C# WPF始终关注文本框

C# WPF始终关注文本框,c#,wpf,textbox,focus,C#,Wpf,Textbox,Focus,每当我单击WPF应用程序上的任何内容时,我希望始终将注意力集中在WPF应用程序上的特定文本框上 有一个事件处理程序MouseLeftMouseButton。触发事件处理程序时,在处理程序内使用textbox.Focus()。向事件添加一个将焦点设置到文本框的处理程序。如果我是对的,您的目的是获取键盘命令并显示文本框中的字符,即使焦点在其他控件上 如果是这种情况,您可以将键盘命令路由到根控件(顶层控件…例如:窗口),分析它们并显示在文本框中。如果有帮助的话,我会试着举例说明 编辑: private

每当我单击WPF应用程序上的任何内容时,我希望始终将注意力集中在WPF应用程序上的特定
文本框上

有一个事件处理程序
MouseLeftMouseButton
。触发事件处理程序时,在处理程序内使用
textbox.Focus()

向事件添加一个将焦点设置到文本框的处理程序。

如果我是对的,您的目的是获取键盘命令并显示文本框中的字符,即使焦点在其他控件上

如果是这种情况,您可以将键盘命令路由到根控件(顶层控件…例如:窗口),分析它们并显示在文本框中。如果有帮助的话,我会试着举例说明

编辑:

private void Window\u KeyDown(对象发送方,System.Windows.Input.KeyEventArgs e)
{
if(Keyboard.Modifiers!=ModifierKeys.Shift)
{
如果(e.Key>Key.A&&e.KeyKey.A&&e.Key
只有在使用鼠标失去焦点的情况下,这种方法才有效。但是如果有人按Tab键怎么办…?是的,这是正确的,你能举个例子如何感谢吗!嘿,谭,检查我的编辑。现在,您可以分析字母以外的键:)
private void Window_KeyDown(object sender, System.Windows.Input.KeyEventArgs e)
{
  if (Keyboard.Modifiers != ModifierKeys.Shift)
  {
    if (e.Key > Key.A && e.Key < Key.Z)
    {
      textBox1.Text += e.Key.ToString().ToLower();
    }
  }
  else
  {
    if (e.Key > Key.A && e.Key < Key.Z)
    {
      textBox1.Text += e.Key.ToString();
    }
  }            
  e.Handled = true;
}