MasterPage + UpdatePanel + FileUpload

上传文件在母版页与Ajax的UpdatePanel的环境进行。
由于在母版内使用Ajax,建议使用AjaxControlToolkit.dll组件,去微软官网下载后,并拉入BIN目录中。



然后去web.config中配置:



创建一个母版FileMgt.master,使用ajaxtoolkit:toolkitscriptmanagerasp:ScriptManagerProxy:



创建一个网页LoadFile.aspx,选择则才的母版页。其实asp:FileUpload控件不能在Ajax的UpdatePnael中使用,当点击上传时,已经PostBack了,根本无法拿到FileUpload控件的文件信息。但某些原因,还需要使用到Ajax的UpdatePanel控件,在这情况之下,只好使用Triggers的asp:PostBackTrigger控件来注册了,这样做法,就是去掉了FileUpload控件去掉了UpdatePanel控件功能,即是去掉了Ajax。



去网站根目录之下,创建一个目录,为了存储上传的文件。



现在我们去写上传按钮的OnClick事件:



Ok,演示一下,看看是否正常?





以下内容于2013-07-23 16:45分补充

如果上传是在用户控件进行,那怎样注册asp:PostBackTrigger呢? 没事的,Insus.NET教你解决它。
创建一个用户控件:



去FileLoadAscx.aspx.cs写OnClick事件:


接下来,创建一个网页,并切换至design模式,把用户控件拉入网页中去。


现在的问题是,怎样把用户控件上传的铵钮ID注册在网页page的UpdatePanel去呢?此时,你可以在用户控件的Page_load进行。




posted @ 2013-07-23 16:34  Insus.NET  阅读(3222)  评论(2编辑  收藏  举报