如何使ESC在受信任的应用程序中退出全屏模式?

时间:2010-06-10 06:28:07

标签: silverlight silverlight-4.0 out-of-browser

  

键盘限制更改的一个后果是按ESC不会在受信任的应用程序中退出全屏模式。这使您可以使用ESC键进行其他功能。但是,您必须提供自己的用户界面以退出全屏模式。

参考:http://msdn.microsoft.com/en-us/library/ee721083(v=VS.95).aspx#fullscreen_support

我需要让ESC在受信任的应用程序中退出全屏模式而不在所有页面中提供UI控件。

请给我提示,谢谢。

1 个答案:

答案 0 :(得分:2)

这就是你这样做的方式。

 private void UserControl_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.Key == Key.Escape && App.Host.Content.IsFullScreen)
     {
         App.Host.Content.IsFullScreen = false;
     }
}

private void UserControl_Load(object sender, RoutedEventArgs e)
{
    this.AddHandler(UIElement.KeyDownEvent, new KeyEventHandler(UserControl_KeyDown), true);
}

通过使用AddHandler方法,您可以指示您想要接收keydown事件,无论它是否已被另一个控件标记为已处理。因此,无论当前有什么控制焦点,按下Esc键都应该冒泡到顶部。