成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

全屏模式下處理Silverlight控件的兩種方式

開發(fā) 后端 前端
文章作者介紹在Silverlight中全屏處理的兩種方式,第1種方式,即應用圖片的Stretch屬性;第2種方式則在后臺進行處理。

Silverlight插件支持全屏模式,這個沒什么好說的,只需要用設置IsFullScreen屬性即可,問題在于全屏模式中,盡管屏幕變大了,但是頁面中的控件并未相應的變大。

51CTO推薦專題:走向銀光 一步一步學Silverlight

第1種方式,即應用圖片的Stretch屬性:

  1. <Grid x:Name="LayoutRoot" Background="White"> 
  2. <Image Stretch="UniformToFill" Source="/FullScreenModel;component/Koala.jpg" /> 
  3. <Button Content="全屏"  Name="button1"  Click="button1_Click" /> 
  4. </Grid> 

Click事件代碼:

  1. private void button1_Click(object sender, RoutedEventArgs e)  
  2.      {  
  3.          Application.Current.Host.Content.IsFullScreen = !Application.Current.Host.Content.IsFullScreen;  
  4.      } 

這里主要是將Image的Stretch屬性設置為UniformToFill,這樣圖片就可以根據瀏覽器分辨率的變化而變化,這種方式在處理圖片,視頻等資源時比較方便,不過使用這種方式在插入模式下使用圖片時,你需要進行一些處理,因為若你在Image中指定Width或Height,圖片在全屏模式下會保持這個固定的大小。

第2種方式則在后臺進行處理

當處于全屏模式時,該頁面上的控件也進行變化,以Button為例。這種方式或許更貼近我們平常接觸的全屏,我們看看這部分的實現:

Button 

Button

  1. <Grid.RenderTransform> 
  2.             <ScaleTransform ScaleX="1" ScaleY="1" x:Name="RootLayoutScaleTransform"> 
  3.             </ScaleTransform> 
  4.         </Grid.RenderTransform> 
  5.        <Button  Name="button1" Content="全屏" Height="30" Width="50" Click="button1_Click" Margin="70,170,72,100">           
  6.         </Button> 

這里在UI中添加了一個名為RootLayoutScaleTransform的放大轉換,后臺代碼主要是根據插件的Resized,FullScreenChanged事件進行處理的,所以我們在構造函數中聲明。

  1. Application.Current.Host.Content.Resized += new EventHandler(Content_Resized);  
  2. Application.Current.Host.Content.FullScreenChanged += new EventHandler(Content_Resized);
  3.  

完整的代碼:

  1. private double width;  
  2.         private double height;  
  3.         public double uniformScaleAmount = 1;  
  4.         public MainPage()  
  5.         {  
  6.             InitializeComponent();  
  7.              height = this.Height;  
  8.              width = this.Width;  
  9.             Application.Current.Host.Content.Resized += new EventHandler(Content_Resized);  
  10.             Application.Current.Host.Content.FullScreenChanged += new EventHandler(Content_Resized);  
  11.         }  
  12.         private void button1_Click(object sender, RoutedEventArgs e)  
  13.         {  
  14.             Application.Current.Host.Content.IsFullScreen = !Application.Current.Host.Content.IsFullScreen;  
  15.         }  
  16.         void Content_Resized(object sender, EventArgs e)  
  17.         {  
  18.             double currentWidth = Application.Current.Host.Content.ActualWidth;  
  19.             double currentHeight = Application.Current.Host.Content.ActualHeight;  
  20.             uniformScaleAmount = Math.Min((currentWidth / width), (currentHeight /height));  
  21.             RootLayoutScaleTransform.ScaleX = uniformScaleAmount;  
  22.             RootLayoutScaleTransform.ScaleY = uniformScaleAmount;  
  23.         }  

頁面初始化后我們先將當前插件的大小保存了下來,當單擊Button發(fā)生全屏事件時,會進行相關事件的處理,這種方式我覺得處理的更為妥善一些,程序運行的時候,如果你的界面上什么都沒有,需要設置UserControl的Width,Height屬性。

原文地址:http://www.cnblogs.com/626498301/archive/2010/08/26/1808883.html

【編輯推薦】

  1. 簡單Silverlight應用程序五步走
  2. Silverlight基礎屬性:依賴與附加
  3. 細數Silverlight 4的十二大引人注目新特性
  4. Silverlight 4中XAML解析的變化
  5. F#終于支持Silverlight 4 四大新特性一覽
責任編輯:王曉東 來源: 博客園
相關推薦

2009-08-19 17:30:38

C#轉義字符

2009-08-17 17:28:23

C#轉義字符

2011-03-03 10:26:04

Pureftpd

2021-05-27 10:57:01

TCP定時器網絡協議

2009-06-25 13:43:00

Buffalo AJA

2010-10-21 16:24:18

sql server升

2010-08-06 09:38:11

Flex讀取XML

2023-03-29 13:06:36

2024-06-06 08:32:52

.NET框架代碼

2010-09-07 11:09:59

2009-06-29 18:11:40

JSP設計模式

2025-01-26 00:00:25

限流組件HTTP

2010-07-27 15:03:37

Flex ArrayC

2024-09-20 11:32:28

.NET內存管理

2010-05-10 18:19:00

負載平衡技術

2011-03-23 11:22:14

oracle dbli

2010-07-14 10:30:26

Perl多線程

2010-07-15 14:38:55

Perl eval函數

2010-08-03 13:27:04

FlexBuilder

2011-04-02 09:48:38

深拷貝
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中国xxxx性xxxx产国 | 亚洲精品久久久久久久久久久久久 | 欧美二区在线 | 日日夜夜精品视频 | 日韩午夜一区二区三区 | 国产一区二区三区免费 | 欧区一欧区二欧区三免费 | 国产精品久久久久久久久久久久 | 亚洲日韩中文字幕一区 | 久草网站| 精品96久久久久久中文字幕无 | 中文字幕 国产 | av免费网站在线 | 国产激情综合五月久久 | 日韩一区二区三区精品 | xxxcom在线观看 | 欧美综合一区二区三区 | 亚洲精品视频在线 | 欧美精品成人一区二区三区四区 | 亚洲 中文 欧美 日韩 在线观看 | 欧美成人性生活 | 久久久精品一区 | 久草成人| 日韩欧美三级电影 | 亚洲综合久久久 | 国产精品永久免费 | 一区二区三区免费网站 | 亚洲第一在线视频 | 久久亚洲一区二区三区四区 | 国产精品不卡一区二区三区 | 日本一区二区三区免费观看 | 精品一区二区三区免费毛片 | 日日夜夜天天 | 久久激情av | 天天干狠狠操 | 久久综合爱 | 日日操操 | 久久大 | 亚洲精品99久久久久久 | 欧美一区二区在线播放 | 国产91一区二区三区 |