日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網營銷解決方案
silverlight仿“百度文庫”的文檔控件

通用的FlashPaper支持Word/Excel/PDF,到時對于Silverlight的XPS的文檔支持問題比較多,本控件提供了一個可視化的XPS文檔展示,提供放大縮小/打印/搜索/分頁等功能,主要整合了開源的Document Toolkit。

10年積累的網站建設、網站設計經驗,可以快速應對客戶對網站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網絡服務。我雖然不認識你,你也不認識我。但先網站設計后付款的網站建設流程,更有汾西免費網站建設讓你可以放心的選擇與我們合作。

1. 使用Document Toolkit,DocumentDataSource提供數(shù)據源,PageNvaigator提供分頁 :

   
 
 
 
  1.  
  2.  
  3.           
  4.  
  5.         
  6.                     PageCount="{Binding PageCount, ElementName=viewer}" 
  7.                     PageIndex="{Binding PageIndex, ElementName=viewer, Mode=TwoWay}" 
  8.                     />  
  9.                   
  10.          

2. WebPackageReader讀取本地xps或遠程xps文件作為數(shù)據源

DotNetZipPackageReader 根據分頁延遲加載文檔

   
 
 
 
  1. // loads the sample XPS document from the web  
  2.             var url = string.Format("/DocumentService.ashx?id={0}", HtmlPage.Document.GetElementById("documentId").GetProperty("value"));  
  3.             webClient.OpenReadAsync(new Uri(HtmlPage.Document.DocumentUri, url));   
  4.             var reader = new WebPackageReader(new Uri(HtmlPage.Document.DocumentUri, url + "&part="));  
  5.             this.dataSource.PackageReader = reader;  
  6.             var xpsClient = new XpsClient();  
  7.             xpsClient.LoadXpsDocumentAsync(reader); 

3. 服務端根據請求的文件ID和當前頁碼返回指定的文件流

   
 
 
 
  1. private void Response(HttpContext context, string xpsFileName, string partName)  
  2.         {  
  3.             using (FileStream stream = File.OpenRead(xpsFileName))  
  4.             {  
  5.                 ZipFile file = new ZipFile(stream);  
  6.                 ZipEntry entry = file.GetEntry(partName);  
  7.                 if (entry != null)  
  8.                 {  
  9.                     using (Stream entryStream = file.GetInputStream(entry))  
  10.                     {  
  11.                         // TODO: set mime-type as defined in XPS package  
  12.                         context.Response.ContentType = "application/octet-stream";  
  13.                         byte[] buffer = new byte[2 << 14];    // write blocks of 32768 bytes  
  14.                         int read;  
  15.                         while ((read = entryStream.Read(buffer, 0, buffer.Length)) > 0)  
  16.                         {  
  17.                             context.Response.OutputStream.Write(buffer, 0, read);  
  18.                         }  
  19.                     }  
  20.                 }  
  21.                 else 
  22.                 {  
  23.                     // return 404 Not Found  
  24.                     context.Response.StatusCode = (int)HttpStatusCode.NotFound;  
  25.                 }  
  26.             }  
  27.  
  28.         } 

4. 源代碼下載

點擊

5. 在線預覽

http://rapidsl2.guozili.25u.com/  (admin/admin  點左邊菜單 控件展示 - 文檔查看器)

6. 截圖


當前標題:silverlight仿“百度文庫”的文檔控件
文章來源:http://www.dlmjj.cn/article/codihei.html