亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

全屏模式下如何處理Silverlight控件

發布時間:2021-12-03 11:08:26 來源:億速云 閱讀:136 作者:小新 欄目:編程語言

小編給大家分享一下全屏模式下如何處理Silverlight控件,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

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

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

Click事件代碼:

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

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

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

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

全屏模式下如何處理Silverlight控件

全屏模式下如何處理Silverlight控件

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

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

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

完整的代碼:

private double width;          private double height;          public double uniformScaleAmount = 1;          public MainPage()          {              InitializeComponent();               height = this.Height;               width = this.Width;              Application.Current.Host.Content.Resized += new EventHandler(Content_Resized);              Application.Current.Host.Content.FullScreenChanged += new EventHandler(Content_Resized);          }          private void button1_Click(object sender, RoutedEventArgs e)          {              Application.Current.Host.Content.IsFullScreen = !Application.Current.Host.Content.IsFullScreen;          }          void Content_Resized(object sender, EventArgs e)          {              double currentWidth = Application.Current.Host.Content.ActualWidth;              double currentHeight = Application.Current.Host.Content.ActualHeight;              uniformScaleAmount = Math.Min((currentWidth / width), (currentHeight /height));              RootLayoutScaleTransform.ScaleX = uniformScaleAmount;              RootLayoutScaleTransform.ScaleY = uniformScaleAmount;          }

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

以上是“全屏模式下如何處理Silverlight控件”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新巴尔虎左旗| 汽车| 苏尼特左旗| 土默特右旗| 南康市| 靖宇县| 开鲁县| 南京市| 黑河市| 辽宁省| 甘德县| 通道| 洱源县| 罗平县| 九寨沟县| 新乡县| 绍兴市| 社会| 凌云县| 揭东县| 新蔡县| 通榆县| 龙胜| 大田县| 三原县| 鹰潭市| 聂拉木县| 仁化县| 米林县| 凉山| 庆安县| 平果县| 五寨县| 新余市| 晋江市| 南岸区| 湘潭市| 梅州市| 方城县| 巩义市| 普兰店市|