Silverlight 3. У меня был некий перерыв в работе с Silveright и что-то я не вспомнил, как определить, что окно / приложение Silverlight активно или нет. И сделать это нужно вне зависимости, браузерное это приложение Silverlight или это "Out Of Brouser", всю страницу в браузере это занимает или нет. Проблема в том, что события LostFocus и GotFocus не дают возможности определить, что приложение активно или нет. Пока я это сделал через отслеживание событий на корневом элементе - Application .Current.RootVisual . Если вы мне подсажете / напомните, как это определять более красиво, то буду вам очень благодарен. Конечно я это не тестировал на всех вариантах работы Silverlight, но полагаю, что это должно работать. Идея следующая, например, для определения того, что приложение не активно: Если после события потери фокуса происходит событие MouseLeave, то значит приложение перестало быть активным. Любое же событие получение фокуса говорит о том, что приложени стало активным.