My updatePanel is in MasterPage and FileUpload is in Child Page. As FileUpload requires a full PagePostBack I tried following approaches, but none of them worked, fileupload.hasfile gives false and postedfile is null. Not sure what else to do. Please go through and suggest. Is there anything that I am missing. Using .NET Framework 4.0, Bootstrap 4
Approach 1 - Adding Postback trigger through code behind
AddTriggers(btnupload.UniqueID);
public static void AddTriggers(string ControlID)
{
UpdatePanel UP = Page.Master.FindControl("MainUpdPanel") as UpdatePanel;
UpdatePanelControlTrigger trigger = new PostBackTrigger();
trigger.ControlID = ControlID;
UP.Triggers.Add(trigger);
}
Approach 2 - Wrapping fileupload and it's button in a separate UpdatePanel in child Page
<asp:UpdatePanel ID="Upld" runat="server">
<ContentTemplate>
<div class="input-group form-inline">
<asp:FileUpload ID="FileUploadreq" runat="server" />
<asp:Button runat="server" ID="btnupload" Text="Upload" OnClick="btnupload_Click" />
<asp:LinkButton runat="server" Text="View" ID="lnkview" OnClick="lnkview_Click" Visible="False"></asp:LinkButton>
</div>
</ContentTemplate>
<Triggers>
<asp:PostBackTrigger ControlID="btnupload" />
</Triggers>
</asp:UpdatePanel>
Add enctype="multipart/form-data"
to the form tag and add the trigger in your page Page_Init function
protected void Page_Init(object sender, EventArgs e)
{
AddTriggers(btnupload.UniqueID);
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.