检测空闲Silverlight应用程序

时间:2010-08-03 21:38:02

标签: javascript silverlight xaml browser

Silverlight检测用户的最简单方法是什么? 即一段时间内没有鼠标输入和键盘输入。

我尝试监视鼠标事件,键盘事件和根视觉的焦点事件,但这似乎不够。 例如,弹出窗口可能是打开的,这些事件不会到达根视觉。

也许是javascript解决方案?

然后是另一个问题。当应用程序处于空闲状态时,我希望它显示为灰色(就像ChildWindow行为一样)。即使现在有一个开放的ChildWindow或一个简单的Popup,我希望它看起来像这样。

1 个答案:

答案 0 :(得分:0)

您确定儿童窗口没有泡泡吗?这是一个路由事件......没有意识到这一点。

如果没有,只需创建一个合同:

ILastActivity : INotifyPropertyChanged 
void Touch();
DateTime LastActivity { get; private set; }

然后,您可以创建附加行为,基类或使用任何其他机制来简单地在视图上注册关键事件。他们都会在被触发时调用“Touch”,你的计时器会检查LastActivity来确定它。可能是你可以用自动化同行做的事情,值得研究。