[Silverlight] Silverlight保持全螢幕模式
當Silverlight在全螢幕時預設會在失去焦點的時候自動結束全螢幕,但是在Silverlight 4的時候加進了FullScreenOptions可以設定當在全螢幕時失去焦點還是保持在全螢幕模式,而且使用的方式也很容易,只要設定FullScreenOptions為StaysFullScreenWhenUnfocused就可以,記得要先引用System.Windows.Interop
using System.Windows;
using System.Windows.Controls;
using System.Windows.Interop;
namespace FullScreenSample
{
public partial class MainPage : UserControl
{
public MainPage()
{
InitializeComponent();
Application.Current.Host.Content.FullScreenOptions = FullScreenOptions.StaysFullScreenWhenUnfocused;
}
private void FullScreenbutton_Click(object sender, RoutedEventArgs e)
{
Application.Current.Host.Content.IsFullScreen = !Application.Current.Host.Content.IsFullScreen;
}
}
}
而在進入全螢幕前,會先跳出下面這個方塊詢問使用者是否要保持全螢幕的模式,如果選"否"的話當失去焦點時全螢幕還是會自動結束,而選擇"是"的話可以試著在全螢幕模式時按下鍵盤的Windows鍵,全螢幕還是會保持住不會自動結束
而每次進入全螢幕前都會跳出這個方塊,因此也可以勾選記住回應這樣下次在此網站進入全螢幕前,就不會再跳出方塊詢問而會直接依照之前的選擇為準,而所有記憶住的選擇都可以在Sivlerlight組態設定中的權限底下看到,在這裡要更改允許拒絕或是移除掉都可以
這個全螢幕模式的維持有時還蠻有用的,例如像在使用雙螢幕時,當一個螢幕在看Silverlight的影片,另一個螢幕可能同時要做其他事,這時如果沒有辦法保持全螢幕模式那麼只要一點擊另一個螢幕裡的東西讓Silverlight應用程式失去焦點,影片的全螢幕也會自動結束還蠻不方便,所以有了這個功能後就可以一直保持Silverlight應用程式的全螢幕了!