Silverlight SaveFileDialog - 设置默认文件名

发布于 2024-12-18 18:35:35 字数 651 浏览 3 评论 0原文

我当前正在从 URL 读取流。并将其保存为客户端上的文件。 我知道 Silverlight 4 不支持 SaveFileDialog 上的默认文件名。

有没有人找到解决方法或某种方法将文件名注入流中?

任何解决方法都可以很好地设置文件名。

代码:

    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);
        }
    } 

I am currently reading a stream from a URL. And saving this as a file on the client.
I know that Silverlight 4 does not support the Default File Name on the SaveFileDialog.

Has anyone out there found a workaround or some way to inject the FileName into the Stream?

Any workaround would be great to set the file name.

Code:

    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);
        }
    } 

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

撩发小公举 2024-12-25 18:35:35
SaveFileDialog dialog = new SaveFileDialog();
dialog.GetType().GetMethod("set_DefaultFileName").Invoke(dialog, new object[] { "FileName.ext" });

对我有用

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

Works for me

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文