今天碰到一个问题:在UpdatePanel里面需要上传文件。大家应该知道UpdatePanel里面是不可以上传文件的!不过我们可以变换下就可以了!
ASPX代码如下:(跟正常的代码是没有什么区别的!)
<asp:UpdatePanel ID=
"UpdatePanel1" unat=
"server">
<ContentTemplate>
<asp:FileUpload ID= "FileUpload1" runat= "server" />
<asp:Button ID= "Button1" runat= "server" Text= "上传" οnclick= "Button1_Click" /> </ContentTemplate>
</asp:UpdatePanel>
<ContentTemplate>
<asp:FileUpload ID= "FileUpload1" runat= "server" />
<asp:Button ID= "Button1" runat= "server" Text= "上传" οnclick= "Button1_Click" /> </ContentTemplate>
</asp:UpdatePanel>
C#代码如下:也是最关键的
PostBackTrigger trigger =
new PostBackTrigger();
trigger.ControlID = Button1.UniqueID;
UpdatePanel1.Triggers.Add(trigger);
trigger.ControlID = Button1.UniqueID;
UpdatePanel1.Triggers.Add(trigger);
这里记得一定别放在if(!IsPostBack)里面。
下面说下c#代码:就是给UpdatePanel增加一个回发控件,那为什么要用Button1.UniqueID。是应为如果你这个控件放在一些面板控件里面,UpdatePanel是找不到回发控件的ID的。
转载于:https://blog.51cto.com/leehai/153736