This comes as basic requirements by the majority of clients that they want a good user experience with some file uploaders/downloads for templates which are further used in your application.
Just in case, you are not using any new technologies, no spa, no JSON and no angularjs etc.
Your app is made of asp.net because of security concerns of your firm and not so knowledgeable managers and the page refreshes every time the second you click a button and reload the entire content, but you do not want that as you know UX design ethics, so to overcome this problem you added an update panel and a nested update panel outside button to make it asynchronous, but what is this? You are not able to make button click event to get hit in code behind c#.
What will you do?
You will use update panel triggers like below.
<asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <fieldset style="width: 90%"> <legend>File Uploader</legend> <table style="width: 90%"> <tr> <td> <b>File Type:</b> </td> <td> <asp:DropDownList ID="ddlFileType" runat="server" AutoPostBack="False"> </asp:DropDownList> </td> <td> <b>Upload File:</b> </td> <td> <asp:UpdatePanel ID="UpdatePanelUpload" runat="server" UpdateMode="conditional"> <ContentTemplate> <asp:FileUpload ID="flUploadFile" runat="server" /> <asp:Button ID="btnUpload" runat="server" Text="Upload" OnClick="btnUpload_Click" /><br /> </ContentTemplate> <Triggers> <asp:PostBackTrigger ControlID="btnUpload" /> </Triggers> </asp:UpdatePanel> </td> <td> <asp:UpdatePanel ID="UpdatePanelDownload" runat="server" UpdateMode="conditional"> <ContentTemplate> <asp:Button ID="btnDownload" runat="server" OnClick="btnDownload_Click" Text="Download Sample File" /> </ContentTemplate> <Triggers> <asp:PostBackTrigger ControlID="btnDownload" /> </Triggers> </asp:UpdatePanel> </td> </tr> </table> </fieldset> </ContentTemplate> </asp:UpdatePanel> |
Rest is same in backend file.
Enjoy coding.
Comments
Post a Comment
Important - Make sure to click the Notify Me check-box below the comment to be notified of follow up comments and replies.