Silverlight SaveFileDialog - установить имя файла по умолчанию - PullRequest
2 голосов
/ 29 ноября 2011

Я сейчас читаю поток с URL.И сохранить это как файл на клиенте.Я знаю, что Silverlight 4 не поддерживает имя файла по умолчанию в 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);
        }
    } 

1 Ответ

8 голосов
/ 18 июля 2012
SaveFileDialog dialog = new SaveFileDialog();
dialog.GetType().GetMethod("set_DefaultFileName").Invoke(dialog, new object[] { "FileName.ext" });

У меня работает

...