C# 如何获取窗体活动控件?

C# 如何获取窗体活动控件?,c#,winforms,windows-mobile,windows-ce,C#,Winforms,Windows Mobile,Windows Ce,有没有办法使窗体成为活动控件 我正在查看“Support.GetActiveControl”方法的帮助,但它不受压缩框架的支持:) 我想我可以通过向所有表单控件添加自定义的GotFocus事件处理程序来跟踪焦点,但我正在寻找一种更通用的方法,它可以用于任何表单。您可以迭代表单中的所有控件,并检查哪个控件是焦点 示例:此示例在标签控件中显示当前选定的Windows窗体控件的名称 private void DisplayNameOfActiveControl() { label1.Text

有没有办法使窗体成为活动控件

我正在查看
“Support.GetActiveControl”
方法的帮助,但它不受压缩框架的支持:)


我想我可以通过向所有表单控件添加自定义的
GotFocus
事件处理程序来跟踪焦点,但我正在寻找一种更通用的方法,它可以用于任何表单。

您可以迭代表单中的所有控件,并检查哪个控件是焦点


示例:

此示例在标签控件中显示当前选定的Windows窗体控件的名称

private void DisplayNameOfActiveControl()
{
    label1.Text = this.ActiveControl.Name;
}

可能与-1重复:根据问题
ActiveControl
在Compact Framework中不存在。此外,例如,如果您在splitcontainer中有一个textbox,它将返回splitcontainer而不是textbox