How to: 动态加载WebPart模块

WebPartZone的ZoneTemplate可以通过声明方式来定义,在每个用户首次(即没有已保存状态时)登录时,WebPart Runtime会按ZoneTemplate内的定义生成默认的WebPart布局,并在用户对布局进行调整后此用户后续登录时,从Personal PersonalizationProvider中还原布局。

当如果要动态的设置默认的ZoneTemplate时,可以按以下两种方法实现:

1, 参考http://msdn.microsoft.com/msdnmag/issues/05/09/WebParts/

<%@ Register Assembly="WingtipWebParts" Namespace="WingtipWebParts"
TagPrefix="Wingtip" %>

<asp:WebPartManager ID=" WebPartManager1" runat="server" />

<asp:WebPartZone ID="WebPartZone1" runat="server" HeaderText="Zone 1">
  <ZoneTemplate>
    <Wingtip:HelloWorld runat="server" id="HelloWorld" />
  </ZoneTemplate>
</asp:WebPartZone>
但这种方式只适合默认只有一个WebPart,如果有多个的话,将变成一个整体拖拽。

2,先创建一个新类,并实现System.Web.UI.ITemplate接口,在InstantiateIn方法内创建需要默认创建的WebPart实例,并添加到InstantiateIn方法的参数container的Controls集合中,然后对WebPartZone的Init事件添加委托,在事件触发时,将当前的WebPartZone的ZoneTemplate属性设置为这个新类的实例。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值