Когда форма + элемент управления загружены, элемент управления может подписаться на события активации и деактивации формы.
Если это UserControl, у вас есть событие Control.Load, чтобы сделать это. Для CustomControl я должен был бы искать это.
В любом случае, обязательно отмените Dispose в вашем элементе управления, чтобы отписаться от событий.
Только что попробовал:
private void UserControl1_FormActivate(object sender, EventArgs e)
{
label1.Text = "Acitve";
}
private void UserControl1_FormDeActivate(object sender, EventArgs e)
{
label1.Text = "InAcitve";
}
private void UserControl1_Load(object sender, EventArgs e)
{
this.ParentForm.Activated += UserControl1_FormActivate;
this.ParentForm.Deactivate += UserControl1_FormDeActivate;
}