webParts与UpdatePanel都是ms的产品,直接将webparts放在updatePanel里,原以为就可以搞定webparts无刷新拖动了,试验了一下:令人大跌眼镜,居然没反应,看来ms各产品之间的兼容性还有待改进
到网上搜索了一下,发现一个第三方的ajax工具:majicajax可以搞定这一问题。
这里转贴一个网友对此问题的文章:
Web.config的配置如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | <? xmlversion = "1.0" ?> < configuration > < configSections > < sectionname = "magicAjax" type = "MagicAjax.Configuration.MagicAjaxSectionHandler, MagicAjax" /> </ configSections > < magicAjaxtracing = "false" > < pageStore /> </ magicAjax > < system.web > < authenticationmode = "Forms" /> < pages > < controls > < addnamespace = "MagicAjax.UI.Controls" assembly = "MagicAjax" tagPrefix = "ajax" /> </ controls > </ pages > < webParts > < personalizationdefaultProvider = "Nsquared2SqlPersonalizationProvider" > < authorization > < allowusers = "*" verbs = "enterSharedScope" /> </ authorization > < providers > < addname = "Nsquared2SqlPersonalizationProvider" type = "Nsquared2.Web.UI.WebControls.WebParts.SqlPersonalizationProvider, Nsquared2.Web" connectionStringName = "PortalConnectionString" varyByParams = "ParentDPID,DPID,UserId" ></ add > </ providers > </ personalization > </ webParts > < httpModules > < addname = "MagicAjaxModule" type = "MagicAjax.MagicAjaxModule, MagicAjax" /> </ httpModules > < compilationdebug = "true" > < assemblies > < addassembly = "System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A" /></ assemblies ></ compilation > </ system.web > </ configuration > |
使用WebPart的页面如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | < asp:WebPartManager ID = "WebPartManager1" runat = "server" > </ asp:WebPartManager > < ajax:AjaxPanel ID = "AjaxPanel1" runat = "server" Height = "305px" Width = "452px" > < wmz:WebPartDisplayModesMenu ID = "WebPartDisplayModesMenu1" runat = "server" /> < table > < tr > < td > < asp:WebPartZone ID = "WebPartZone1" runat = "server" > < ZoneTemplate > < asp:TextBox ID = "TextBox1" runat = "server" ></ asp:TextBox > </ ZoneTemplate > </ asp:WebPartZone > </ td > < td > < asp:WebPartZone ID = "WebPartZone2" runat = "server" > < ZoneTemplate > < asp:Calendar ID = "Calendar1" runat = "server" ></ asp:Calendar > </ ZoneTemplate > </ asp:WebPartZone > </ td > </ tr > </ table > </ ajax:AjaxPanel > |
把两个WebPartZone放在 MagicAjax's AjaxPanel.控件中,可以支持所有的WebPart的所有操作无刷新,类似于Google的Loading……效果。
点击查看更多内容
为 TA 点赞
0 评论
共同学习,写下你的评论
暂无评论
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦