色尼玛亚洲综合影院,亚洲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 :全屏模式支持,轉載需保留來源!

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

主站蜘蛛池模板: 东城区| 得荣县| 鞍山市| 文成县| 陇南市| 五常市| 益阳市| 会宁县| 偏关县| 江华| 凌云县| 任丘市| 巴林左旗| 荣昌县| 洞头县| 荔波县| 涞水县| 大埔县| 乌鲁木齐县| 满城县| 龙山县| 广东省| 英超| 洪泽县| 象山县| 洪泽县| 西藏| 元朗区| 密云县| 镇康县| 理塘县| 西昌市| 北票市| 石泉县| 广饶县| 华阴市| 崇礼县| 黄梅县| 马尔康县| 霍城县| 古田县|