protected override CatalogPartCollection CreateCatalogParts() { CatalogPartCollection catalogParts = new CatalogPartCollection(); if (_zoneTemplate != null) { // PERF: Instantiate the template into a special control, that does nothing when a child control // is added. This is more performant because the child control is never parented to the temporary // control, it's ID is never generated, etc. Control container = new NonParentingControl(); _zoneTemplate.InstantiateIn(container); if (container.HasControls()) { foreach (Control control in container.Controls) { CatalogPart part = control as CatalogPart; if (part != null) { catalogParts.Add(part); } else { LiteralControl literal = control as LiteralControl; // Throw an exception if it is *not* a literal containing only whitespace // Don't throw an exception in the designer, since we want only the offending // control to render as an error block, not the whole CatalogZone. if (((literal == null) || (literal.Text.Trim().Length != 0)) && !DesignMode) { throw new InvalidOperationException(SR.GetString(SR.CatalogZone_OnlyCatalogParts, ID)); } } } } } return catalogParts; }
protected override CatalogPartCollection CreateCatalogParts() { CatalogPartCollection parts = new CatalogPartCollection(); if (this._zoneTemplate != null) { Control container = new NonParentingControl(); this._zoneTemplate.InstantiateIn(container); if (!container.HasControls()) { return parts; } foreach (Control control2 in container.Controls) { CatalogPart part = control2 as CatalogPart; if (part != null) { parts.Add(part); } else { LiteralControl control3 = control2 as LiteralControl; if (((control3 == null) || (control3.Text.Trim().Length != 0)) && !base.DesignMode) { throw new InvalidOperationException(System.Web.SR.GetString("CatalogZone_OnlyCatalogParts", new object[] { this.ID })); } } } } return parts; }
protected override CatalogPartCollection CreateCatalogParts() { CatalogPartCollection parts = new CatalogPartCollection(); if (this._zoneTemplate != null) { Control container = new NonParentingControl(); this._zoneTemplate.InstantiateIn(container); if (!container.HasControls()) { return(parts); } foreach (Control control2 in container.Controls) { CatalogPart part = control2 as CatalogPart; if (part != null) { parts.Add(part); } else { LiteralControl control3 = control2 as LiteralControl; if (((control3 == null) || (control3.Text.Trim().Length != 0)) && !base.DesignMode) { throw new InvalidOperationException(System.Web.SR.GetString("CatalogZone_OnlyCatalogParts", new object[] { this.ID })); } } } } return(parts); }
protected override CatalogPartCollection CreateCatalogParts() { CatalogPartCollection catalogParts = new CatalogPartCollection(); if (_zoneTemplate != null) { // PERF: Instantiate the template into a special control, that does nothing when a child control // is added. This is more performant because the child control is never parented to the temporary // control, it's ID is never generated, etc. Control container = new NonParentingControl(); _zoneTemplate.InstantiateIn(container); if (container.HasControls()) { foreach (Control control in container.Controls) { CatalogPart part = control as CatalogPart; if (part != null) { catalogParts.Add(part); } else { LiteralControl literal = control as LiteralControl; // Throw an exception if it is *not* a literal containing only whitespace // Don't throw an exception in the designer, since we want only the offending // control to render as an error block, not the whole CatalogZone. if (((literal == null) || (literal.Text.Trim().Length != 0)) && !DesignMode) { throw new InvalidOperationException(SR.GetString(SR.CatalogZone_OnlyCatalogParts, ID)); } } } } } return(catalogParts); }