Вы также можете использовать свойство формы ActiveControl .
Я взял код codekaizen и поместил его в форму вместе с таймером и несколькими элементами управления (DataGridView, Panel, а также Button и CheckBox в Panel).Добавил этот код в событие Tick таймера:
private void timer1_Tick(object sender, EventArgs e)
{
label1.Text = ActiveControl.Name;
label2.Text = GetFocusedControl().Name;
}
, и они сообщили об одном и том же активном элементе управления, когда я переключался с одного элемента управления на другой.