日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

36.Silverlight中播放视频和打印文档【附带源码实例】

發布時間:2024/9/20 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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中播放视频和打印文档【附带源码实例】的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。