继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

利用majicAjax实现webParts无刷新拖动

ABOUTYOU
关注TA
已关注
手记 300
粉丝 67
获赞 358

webParts与UpdatePanel都是ms的产品,直接将webparts放在updatePanel里,原以为就可以搞定webparts无刷新拖动了,试验了一下:令人大跌眼镜,居然没反应,看来ms各产品之间的兼容性还有待改进

到网上搜索了一下,发现一个第三方的ajax工具:majicajax可以搞定这一问题。

这里转贴一个网友对此问题的文章:

Web.config的配置如下:

<?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的页面如下:

<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……效果。

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP