91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

全屏模式下如何處理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

蒲江县| 宜兴市| 盘山县| 航空| 江北区| 兴宁市| 贵德县| 阿克| 元江| 鄄城县| 辽宁省| 彭州市| 寻甸| 枣庄市| 临夏市| 辉县市| 安福县| 鲁甸县| 临漳县| 鸡泽县| 兴化市| 大埔县| 绥宁县| 乌鲁木齐市| 肃宁县| 巨鹿县| 阜新| 景洪市| 延庆县| 萨嘎县| 西平县| 大丰市| 定南县| 扎鲁特旗| 南木林县| 平潭县| 屯门区| 泸水县| 交城县| 宁德市| 长寿区|