首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

使用 Silverlight 建構工作流設計器(十三):動態生成流程圖片下載(上)

     編輯:關於ASP.NET

問題與挑戰

網友詢問能否匯出流程圖片。Silverlight 早期版本不支援 System.Drawing,且無法直接存取本地檔案系統,導致客戶端直接生成圖片不可行。

解決方案:伺服器端代理生成

將生成圖片邏輯移至 ASP.NET 後台:

  1. 客戶端按下「匯出圖片」按鈕。
  2. 將當前工作流 XML 字串 POST 至伺服器端 .ashx 處理常式或 Web Service。
  3. 伺服器使用 System.Drawing 繪製圖片,儲存為暫存檔(如 ~/temp/workflow_.png)。
  4. 伺服器回傳圖片相對 URL。
  5. 客戶端以 HtmlPage.Window.Navigate(new Uri(url), "_blank") 開啟新視窗下載。
流程圖片生成流程圖

注意:Silverlight 回呼函數中無法直接開啟新視窗,需在按鈕點擊事件中啟動導航,故採用「按鈕觸發 → 非同步上傳 → 回呼取得 URL → 導航」模式。

原始碼與示範

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved