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
- XmlBaseReader.cs
- IisTraceListener.cs
- Stacktrace.cs
- ItemAutomationPeer.cs
- OutOfMemoryException.cs
- UIElement.cs
- SimpleExpression.cs
- BoolExpression.cs
- StorageScalarPropertyMapping.cs
- input.cs
- DataGridViewToolTip.cs
- UnauthorizedAccessException.cs
- Region.cs
- Animatable.cs
- UriScheme.cs
- CompositionAdorner.cs
- Regex.cs
- SynchronizedInputHelper.cs
- RulePatternOps.cs
- ControlValuePropertyAttribute.cs
- TCPClient.cs
- Rect.cs
- TextEmbeddedObject.cs
- IRCollection.cs
- TaiwanCalendar.cs
- RoutedCommand.cs
- TraceListeners.cs
- PageThemeBuildProvider.cs
- TypefaceCollection.cs
- DependencyPropertyKey.cs
- Documentation.cs
- ImpersonateTokenRef.cs
- Graphics.cs
- Viewport3DAutomationPeer.cs
- ChtmlTextWriter.cs
- BitmapCache.cs
- IPAddressCollection.cs
- DbParameterCollection.cs
- DrawItemEvent.cs
- SelectionEditor.cs
- BCryptSafeHandles.cs
- WindowsListViewGroupSubsetLink.cs
- RestClientProxyHandler.cs
- StreamGeometry.cs
- WebPartDescription.cs
- DbCommandDefinition.cs
- ConstructorBuilder.cs
- SectionVisual.cs
- MimeMultiPart.cs
- FixedSOMElement.cs
- TableItemPatternIdentifiers.cs
- IntegerCollectionEditor.cs
- LoadWorkflowByKeyAsyncResult.cs
- WindowsImpersonationContext.cs
- IDReferencePropertyAttribute.cs
- HttpValueCollection.cs
- MappingModelBuildProvider.cs
- Hyperlink.cs
- GeneralTransform.cs
- DiscoveryDefaults.cs
- TokenBasedSetEnumerator.cs
- AnimationClock.cs
- MatrixAnimationUsingKeyFrames.cs
- DynamicRendererThreadManager.cs
- TriggerAction.cs
- SerializationAttributes.cs
- ToolStrip.cs
- SecurityProtocolCorrelationState.cs
- Event.cs
- CodeTypeDelegate.cs
- SQLByte.cs
- HiddenField.cs
- WebPartUserCapability.cs
- ColumnHeaderConverter.cs
- WmfPlaceableFileHeader.cs
- FixedTextSelectionProcessor.cs
- UserPreferenceChangedEventArgs.cs
- NavigationExpr.cs
- SystemIcmpV4Statistics.cs
- ConditionalWeakTable.cs
- GlyphRun.cs
- XsltFunctions.cs
- SerializationAttributes.cs
- DocumentXmlWriter.cs
- GenericQueueSurrogate.cs
- Mutex.cs
- InputEventArgs.cs
- ResizeGrip.cs
- DataTableNewRowEvent.cs
- SoundPlayer.cs
- PathSegmentCollection.cs
- _OverlappedAsyncResult.cs
- Parsers.cs
- ColumnMap.cs
- XmlSchemaSimpleTypeList.cs
- BitmapImage.cs
- ResourcePermissionBaseEntry.cs
- ColorContextHelper.cs
- XmlIncludeAttribute.cs
- AttachedPropertyBrowsableAttribute.cs