protected override void OnDataBinding(EventArgs e) { base.OnDataBinding(e); if ((Items.Count == 0) && (NoneTemplate != null)) { this.Controls.Clear(); //执行空数据源模板 RepeaterItem noneItem = new RepeaterItem(-1, ListItemType.Item); RepeaterItemEventArgs noneArgs = new RepeaterItemEventArgs(noneItem); NoneTemplate.InstantiateIn(noneItem); this.OnItemCreated(noneArgs); this.Controls.Add(noneItem); OnNoneItemsDataBound(noneArgs); this.ChildControlsCreated = true; } }
/// <exclude/> protected override void OnDataBinding(EventArgs e) { base.OnDataBinding(e); if ((Items.Count == 0) && (NoneTemplate != null)) { this.Controls.Clear(); if (ShowHeaderFooterOnNone && (this.HeaderTemplate != null)) { RepeaterItem headerItem = this.CreateItem(-1, ListItemType.Header); RepeaterItemEventArgs headerArgs = new RepeaterItemEventArgs(headerItem); this.InitializeItem(headerItem); this.OnItemCreated(headerArgs); this.Controls.Add(headerItem); headerItem.DataBind(); this.OnItemDataBound(headerArgs); } // Process the NoneTemplate RepeaterItem noneItem = new RepeaterItem(-1, ListItemType.Item); RepeaterItemEventArgs noneArgs = new RepeaterItemEventArgs(noneItem); NoneTemplate.InstantiateIn(noneItem); this.OnItemCreated(noneArgs); this.Controls.Add(noneItem); OnNoneItemsDataBound(noneArgs); if (ShowHeaderFooterOnNone && (this.FooterTemplate != null)) { RepeaterItem footerItem = this.CreateItem(-1, ListItemType.Footer); RepeaterItemEventArgs footerArgs = new RepeaterItemEventArgs(footerItem); this.InitializeItem(footerItem); this.OnItemCreated(footerArgs); this.Controls.Add(footerItem); footerItem.DataBind(); this.OnItemDataBound(footerArgs); } this.ChildControlsCreated = true; } }