生活随笔
收集整理的這篇文章主要介紹了
36.Silverlight中播放视频和打印文档【附带源码实例】
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?????? 在silverlight實際項目中時常會需要播放視頻和打印文檔,在本節中我們將制作一個最簡單的播放視頻和打印文檔的實例。
??????? 一、播放WMV視頻
??????? 首先我們創建一個Silverlight應用程序SLShowVideo,然后放一個示例Wmv視頻在SLShowVideo.web項目的根目錄下面。
??????? 然后我們在Xaml文檔中放入一個MediaElement控件,并寫入以下代碼:
?
<MediaElement?Height="377"?HorizontalAlignment="Left"?Margin="8,31,0,0"?Name="showVideo"?VerticalAlignment="Top"?Width="583"?/>?<Button?Content="播?放"?Height="28"?HorizontalAlignment="Left"?Margin="194,428,0,0"?Name="button1"?VerticalAlignment="Top"?Width="99"?Click="button1_Click_1"?/>?<Button?Content="暫?停"?Height="28"?HorizontalAlignment="Left"?Margin="333,428,0,0"?Name="button3"?VerticalAlignment="Top"?Width="99"?Click="button3_Click"?/>?<Button?Content="停?止"?Height="28"?HorizontalAlignment="Left"?Margin="468,428,0,0"?Name="button2"?VerticalAlignment="Top"?Width="99"?Click="button2_Click"?/>?<Button?Content="加載視頻"?Height="28"?HorizontalAlignment="Left"?Margin="57,428,0,0"?Name="button4"?VerticalAlignment="Top"?Width="99"?Click="button1_Click"/>? ??????? 最后我們寫入以下代碼加載視頻并且控制視頻的播放:
?
#region?播放視頻?private?void?button1_Click(object?sender,?RoutedEventArgs?e)?{?//加載視頻?this.showVideo.Source?=?new?Uri(GetURL()+"/sampleVideo.wmv");?}?///?<summary>?///?獲取當前網站的Url前綴?///?</summary>?///?<returns></returns>?public?static?string?GetURL()?{?ScriptObject?location?=?(HtmlPage.Window.GetProperty("location")?as?ScriptObject);?object?r?=?location.GetProperty("href");?string?URL?=?r.ToString().Substring(0,?r.ToString().LastIndexOf('/'));?//截取到當前SILVERLIGHT程序存放網絡URL的前綴?return?URL;?}?private?void?button3_Click(object?sender,?RoutedEventArgs?e)?{?//暫停?this.showVideo.Pause();?}??private?void?button2_Click(object?sender,?RoutedEventArgs?e)?{?//停止?this.showVideo.Stop();?}??private?void?button1_Click_1(object?sender,?RoutedEventArgs?e)?{?//播放?this.showVideo.Play();?}?#endregion? ??????? 二、打印文檔
??????? 首先我們看XAML文檔。添加一個Canvas元素,元素內的所有內容就是我們即將要打印(當然你也可以設置打印Grid等元素的內容)。
<Canvas?Height="376"?HorizontalAlignment="Left"?Margin="611,32,0,0"?Name="canvas1"?VerticalAlignment="Top"?Width="369"?>?<sdk:Label?Width="85"?Canvas.Left="9"?Content="第一個打印程序"?Canvas.Top="27"?/>?<sdk:Label?Canvas.Left="11"?Canvas.Top="60"?Height="16"?Content="第二個打印程序"?Name="label1"?Width="86"?/>?</Canvas>?<Button?Content="打印"?Height="34"?HorizontalAlignment="Left"?Margin="747,426,0,0"?Name="btnPrint"?VerticalAlignment="Top"?Width="110"?Click="btnPrint_Click"?/>? ??????? 在Button事件處理程序中我們添加一下代碼打印Canvas元素。
#region?打印文檔?PrintDocument?print;?private?void?btnPrint_Click(object?sender,?RoutedEventArgs?e)?{?print?=?new?PrintDocument();?//添加一個打印頁面事件以設置需要打印的控件?print.PrintPage?+=?new?EventHandler<PrintPageEventArgs>(print_PrintPage);?print.Print("canvas1");?}??void?print_PrintPage(object?sender,?PrintPageEventArgs?e)?{?//設置打印this.canvas1的所有內容?e.PageVisual?=?this.canvas1;?}?#endregion? ??????? 本實例采用VS2010+Silverlight 4.0編寫。如需源碼請點擊? SLShowVideo.zip? 下載。期待Silverlight 5 beta的到來。下面我們看實例的效果圖:
轉載于:https://blog.51cto.com/chengxingliang/822567
總結
以上是生活随笔為你收集整理的36.Silverlight中播放视频和打印文档【附带源码实例】的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。