中获得集中控制的最快方法

中获得集中控制的最快方法

我在应用程序的主窗体窗口中使用 ProcessCmdKey 来测试某些键并提供 Space、Right、Left 和其他一些特殊处理。即使用户在嵌套的用户控件集内的 TextBox 中键入,也会调用主窗体中的 ProcessCmdKey。当他们专注于 TextBox 控件时,我不想处理 Space 键,因为他们永远无法输入空格。如何在应用程序范围内测试当前聚焦窗口的类型?

最佳答案

您可以通过以下方式获取窗口句柄:

  [DllImport("user32.dll")]
  private static extern IntPtr GetFocus();

然后,您可以使用 Control.FromHandle 获取与该句柄(如果有)关联的 .NET 控件。

关于c# - 在 WinForms c# 中获得集中控制的最快方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1814209/

10-12 01:57