Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / UI / WebParts / CatalogZone.cs / 1 / CatalogZone.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls.WebParts {
using System.Collections;
using System.Collections.Specialized;
using System.ComponentModel;
using System.Drawing;
using System.Globalization;
using System.Security.Permissions;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Util;
[
Designer("System.Web.UI.Design.WebControls.WebParts.CatalogZoneDesigner, " + AssemblyRef.SystemDesign),
SupportsEventValidation,
]
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public class CatalogZone : CatalogZoneBase {
private ITemplate _zoneTemplate;
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;
}
[
Browsable(false),
DefaultValue(null),
PersistenceMode(PersistenceMode.InnerProperty),
TemplateContainer(typeof(CatalogZone)),
TemplateInstance(TemplateInstance.Single)
]
public virtual ITemplate ZoneTemplate {
get {
return _zoneTemplate;
}
set {
InvalidateCatalogParts();
_zoneTemplate = value;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls.WebParts {
using System.Collections;
using System.Collections.Specialized;
using System.ComponentModel;
using System.Drawing;
using System.Globalization;
using System.Security.Permissions;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Util;
[
Designer("System.Web.UI.Design.WebControls.WebParts.CatalogZoneDesigner, " + AssemblyRef.SystemDesign),
SupportsEventValidation,
]
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public class CatalogZone : CatalogZoneBase {
private ITemplate _zoneTemplate;
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;
}
[
Browsable(false),
DefaultValue(null),
PersistenceMode(PersistenceMode.InnerProperty),
TemplateContainer(typeof(CatalogZone)),
TemplateInstance(TemplateInstance.Single)
]
public virtual ITemplate ZoneTemplate {
get {
return _zoneTemplate;
}
set {
InvalidateCatalogParts();
_zoneTemplate = value;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- InputBuffer.cs
- CodePropertyReferenceExpression.cs
- ScrollChangedEventArgs.cs
- ClientTargetCollection.cs
- XmlSerializer.cs
- EntityProviderFactory.cs
- SuppressMessageAttribute.cs
- XmlSchemaSubstitutionGroup.cs
- DesignerDeviceConfig.cs
- ObjectFactoryCodeDomTreeGenerator.cs
- DataGridViewTextBoxEditingControl.cs
- NavigationFailedEventArgs.cs
- DesignerRegionCollection.cs
- InternalCache.cs
- FixedFlowMap.cs
- OptimalTextSource.cs
- PageThemeBuildProvider.cs
- ClientSession.cs
- MessageTraceRecord.cs
- ControlAdapter.cs
- ObjectHandle.cs
- Size3D.cs
- Wizard.cs
- DataGridAutomationPeer.cs
- SqlFacetAttribute.cs
- BigInt.cs
- Dictionary.cs
- DbQueryCommandTree.cs
- InteropBitmapSource.cs
- Int32Collection.cs
- CompareValidator.cs
- ByteAnimationUsingKeyFrames.cs
- RightsManagementEncryptedStream.cs
- SafeCryptoHandles.cs
- ToolStripContentPanel.cs
- ComponentSerializationService.cs
- BamlLocalizableResourceKey.cs
- ClientEventManager.cs
- Table.cs
- SafeProcessHandle.cs
- CharAnimationUsingKeyFrames.cs
- EventProviderTraceListener.cs
- RelationshipType.cs
- HttpWebResponse.cs
- AssemblyBuilderData.cs
- DockProviderWrapper.cs
- HostedTcpTransportManager.cs
- TextLine.cs
- DbgUtil.cs
- ThousandthOfEmRealDoubles.cs
- _SpnDictionary.cs
- Trace.cs
- RuntimeHelpers.cs
- Subtree.cs
- DBNull.cs
- XmlSecureResolver.cs
- SimpleParser.cs
- TransactionTraceIdentifier.cs
- BooleanToVisibilityConverter.cs
- PageCopyCount.cs
- ExcCanonicalXml.cs
- DiscoveryDocumentSerializer.cs
- UIElementAutomationPeer.cs
- KeyNotFoundException.cs
- Debug.cs
- DragDrop.cs
- ParsedAttributeCollection.cs
- StrokeRenderer.cs
- Int32Storage.cs
- WebServicesDescriptionAttribute.cs
- CollectionViewGroupInternal.cs
- PropertyNames.cs
- _ContextAwareResult.cs
- ContentWrapperAttribute.cs
- WindowsSlider.cs
- DataGridViewElement.cs
- ReaderWriterLock.cs
- UserControl.cs
- XmlElement.cs
- BrowserInteropHelper.cs
- Comparer.cs
- Point3DCollectionConverter.cs
- TextTreeTextNode.cs
- DictionaryGlobals.cs
- SecurityDescriptor.cs
- CollectionExtensions.cs
- TypeBrowserDialog.cs
- InputProviderSite.cs
- PopupControlService.cs
- RuntimeConfigLKG.cs
- _NativeSSPI.cs
- DataObject.cs
- Attributes.cs
- RtfControlWordInfo.cs
- ToolstripProfessionalRenderer.cs
- StructuredCompositeActivityDesigner.cs
- QilSortKey.cs
- Queue.cs
- InputBinding.cs
- ExpressionBuilder.cs