首页 > 解决方案 > 在 asp.net 中的文件上传期间显示进度消息

问题描述

我在 C# webform 中创建了一个网页。它使用 UpdateProgress 控件在服务器处理时显示“上传文件...”消息。为了使文件上传控件工作,我需要将按钮控件放在 PostBackTrigger 中。但是,这样做时,UpdateProgress 不再起作用。如果我从 PostBackTrigger 中取出按钮控件,则 UpdateProgress 可以工作,但 fileupload 控件不能。有解决办法吗?

        <asp:ScriptManager runat="server" ID="sm1"></asp:ScriptManager>
        <asp:UpdateProgress runat="server" ID="PageUpdateProgress">
            <ProgressTemplate>
                Uploading file...
            </ProgressTemplate>
        </asp:UpdateProgress>
        <asp:UpdatePanel runat="server" ID="Panel">
            <!-- Remove the trigger to make the update panel work, but file upload won't work -->
            <Triggers>
                <asp:PostBackTrigger ControlID="btnFileUpload" />
            </Triggers>
            <ContentTemplate>
                <asp:FileUpload runat="server" ID="FileUpload1" /><br /><br />
                <asp:Button runat="server" ID="btnFileUpload" Text="Upload File" OnClick="x_Click" /><br /><br />
                <asp:Label runat="server" ID="label1"></asp:Label>
            </ContentTemplate>
        </asp:UpdatePanel>
        protected void x_Click(object sender, EventArgs e)
        {
            Thread.Sleep(3000);
            if (FileUpload1.HasFile)
            {
                label1.Text = "HasFile is true";
            }
            else
            {
                label1.Text = "HasFile is false";
            }
        }

标签: c#asp.netupdatepanel

解决方案


推荐阅读