2011-11-29 44 views
2

我正在閱讀來自URL的流。並將其保存爲客戶端上的文件。 我知道Silverlight 4不支持SaveFileDialog上的默認文件名。Silverlight SaveFileDialog - 設置默認文件名

有沒有人發現了一種解決方法或某種方式將FileName注入到流中?

任何解決方法將是偉大的設置文件名。

代碼:

public void ClientOpenReadCompleted(object sender, OpenReadCompletedEventArgs e) 
    { 
     using (var file = Save.OpenFile()) 
     { 
      CopyStream(e.Result, file); 
     } 
    } 

    public static void CopyStream(Stream input, Stream output) 
    { 
     var buffer = new byte[8 * 1024]; 
     int length; 
     while ((length = input.Read(buffer, 0, buffer.Length)) > 0) 
     { 
      output.Write(buffer, 0, length); 
     } 
    } 
+0

這大概不會有太大的幫助,現在,但Silverlight的5 SaveFileDialog支持默認的文件名,所以當它的發佈,將解決你的問題。 – Zee

回答

7
SaveFileDialog dialog = new SaveFileDialog(); 
dialog.GetType().GetMethod("set_DefaultFileName").Invoke(dialog, new object[] { "FileName.ext" }); 

對我的作品

+1

這對我而言沒有改變silverlight版本。 THANKs的門(希望你是真正的;-)) – pordi

+1

當我嘗試在Silverlight 4上執行此操作時,我有安全警告。是否有預期的事情? – root