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

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

概述

Silverlight 2 Beta 1版本發布了,無論從Runtime還是Tools都給我們帶來了很多的驚喜,如支持框架語言Visual Basic, Visual C#, IronRuby, IronPython,對JSON、Web Service、WCF以及Sockets的支持等一系列新的特性?!兑徊揭徊綄WSilverlight 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 :全屏模式支持,轉載需保留來源!

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

主站蜘蛛池模板: 淳安县| 富蕴县| 响水县| 内乡县| 浪卡子县| 桃江县| 旌德县| 绥德县| 泾源县| 香格里拉县| 通许县| 溧阳市| 虎林市| 磐石市| 察雅县| 木兰县| 凤山县| 万载县| 子洲县| 兴义市| 华阴市| 无锡市| 韶山市| 安仁县| 武宁县| 嘉禾县| 湘潭县| 四平市| 和硕县| 新宾| 聂拉木县| 博爱县| 鞍山市| 科技| 怀集县| 建平县| 延长县| 祁连县| 永泰县| 芜湖县| 喜德县|