色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

一步一步學Silverlight :全屏模式支持

概述

Silverlight 2 Beta 1版本發布了,無論從Runtime還是Tools都給我們帶來了很多的驚喜,如支持框架語言Visual Basic, Visual C#, IronRuby, IronPython,對JSON、Web Service、WCF以及Sockets的支持等一系列新的特性。《一步一步學Silverlight 2系列》文章帶您快速進入Silverlight 2開發。

本文為系列文章第七篇,介紹如何在Silverlight 2中使用全屏模式。

實現全屏模式

全屏模式有時候是非常有用的,在Silverlight中,提供了很好的支持。實現起來也非常的簡單,其實只有一行代碼,編寫一個簡單的XAML。

<Canvas Background="#46461F">    <Button x:Name="toggleButton" Background="Red" Width="200" Height="80"            Canvas.Top="80" Canvas.Left="150" Content="Toggle Full Screen"            FontSize="20" Click="toggleButton_Click"/>    <Image x:Name="image" Source="smile_6.png"            Canvas.Top="100" Canvas.Left="40"></Image></Canvas>

引入命名空間

using System.Windows.Interop;

在按鈕單擊事件中添加實現代碼。

private void toggleButton_Click(object sender, RoutedEventArgs e){    Content contentObject = Application.Current.Host.Content;    contentObject.IsFullScreen = !contentObject.IsFullScreen;}

獲取當前的Silverlight插件“Content”對象,并設置IsFullScreen屬性。運行后單擊按鈕將會變為全屏模式,再次單擊按鈕(或者按Esc鍵)返回普通模式。

TerryLee_Silverlight2_0039

捕獲相關事件

有時候,我們需要在全屏模式和普通模式之間切換時,添加一個其它的代碼,這時可以使用事件FullScreenChanged。

public Page(){    InitializeComponent();    Application.Current.Host.Content.FullScreenChanged += new EventHandler(Content_FullScreenChanged);}

實現事件處理

private void Content_FullScreenChanged(object sender, EventArgs e){    Content contentObject = Application.Current.Host.Content;    if (contentObject.IsFullScreen)    {        toggleButton.Background = new SolidColorBrush(Colors.Green);        toggleButton.Content = "Full Screen Mode";    }    else    {        toggleButton.Background = new SolidColorBrush(Colors.Red);        toggleButton.Content = "Normal Mode";    }}

在普通模式和全屏模式之間切換時,改變按鈕的背景色和文字。運行后點擊按鈕:

TerryLee_Silverlight2_0040

切換為普通模式:

TerryLee_Silverlight2_0041

完整的代碼如下:

public partial class Page : UserControl{    public Page()    {        InitializeComponent();        Application.Current.Host.Content.FullScreenChanged += new EventHandler(Content_FullScreenChanged);    }    private void toggleButton_Click(object sender, RoutedEventArgs e)    {        Content contentObject = Application.Current.Host.Content;        contentObject.IsFullScreen = !contentObject.IsFullScreen;    }    private void Content_FullScreenChanged(object sender, EventArgs e)    {        Content contentObject = Application.Current.Host.Content;        if (contentObject.IsFullScreen)        {            toggleButton.Background = new SolidColorBrush(Colors.Green);            toggleButton.Content = "Full Screen Mode";        }        else        {            toggleButton.Background = new SolidColorBrush(Colors.Red);            toggleButton.Content = "Normal Mode";        }    }}

結束語

本文簡單介紹了Silverlight 2中對于全屏模式的支持,你可以從這里下載本文示例代碼。

NET技術一步一步學Silverlight :全屏模式支持,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 景宁| 来凤县| 含山县| 二连浩特市| 新密市| 贵溪市| 潮安县| 全椒县| 梁平县| 资溪县| 堆龙德庆县| 普洱| 舟曲县| 五华县| 宁强县| 临沂市| 江安县| 北安市| 镇江市| 休宁县| 肥东县| 逊克县| 河津市| 刚察县| 湖南省| 正镶白旗| 曲阳县| 屯留县| 襄城县| 河北省| 湘乡市| 巴里| 兴业县| 杭州市| 上思县| 哈密市| 镇平县| 大竹县| 渝北区| 宾川县| 页游|