本文共 1507 字,大约阅读时间需要 5 分钟。
在silverlight实际项目中时常会需要播放视频和打印文档,在本节中我们将制作一个最简单的播放视频和打印文档的实例。
一、播放WMV视频
首先我们创建一个Silverlight应用程序SLShowVideo,然后放一个示例Wmv视频在SLShowVideo.web项目的根目录下面。
然后我们在Xaml文档中放入一个MediaElement控件,并写入以下代码:
最后我们写入以下代码加载视频并且控制视频的播放:
#region 播放视频private void button1_Click(object sender, RoutedEventArgs e){ //加载视频 this.showVideo.Source = new Uri(GetURL()+"/sampleVideo.wmv");}////// 获取当前网站的Url前缀/// ///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等元素的内容)。
在Button事件处理程序中我们添加一下代码打印Canvas元素。
#region 打印文档PrintDocument print;private void btnPrint_Click(object sender, RoutedEventArgs e){ print = new PrintDocument(); //添加一个打印页面事件以设置需要打印的控件 print.PrintPage += new EventHandler本实例采用VS2010+Silverlight 4.0编写。如需源码请点击 下载。期待Silverlight 5 beta的到来。下面我们看实例的效果图:(print_PrintPage); print.Print("canvas1");}void print_PrintPage(object sender, PrintPageEventArgs e){ //设置打印this.canvas1的所有内容 e.PageVisual = this.canvas1;}#endregion
转载地址:http://wkfcx.baihongyu.com/