Определите, является ли программа активным окном в .NET
У меня есть приложение на C # / .NET, и я хочу реализовать следующее поведение:
У меня есть всплывающее меню. Всякий раз, когда пользователь нажимает на что-нибудьв приложение, котороене всплывающее меню, я хочу закрыть всплывающее меню.
Однако, когда пользователя нет в приложении, я не хочу, чтобы что-то происходило.
Я пытаюсь управлять этим с помощью события LostFocus, но у меня возникают проблемы с определением, является ли мое приложение активным окном. Код выглядит примерно так.
private void Button_LostFocus(object sender, System.EventArgs e)
{
if (InActiveWindow()) {
CloseMenu()
}
else {
// not in active window, do nothing
}
}
Что мне нужно знать, это как реализовать метод InActiveWindow ().