Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / WebParts / EditorZone.cs / 3 / EditorZone.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls.WebParts {
using System;
using System.Collections;
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.EditorZoneDesigner, " + AssemblyRef.SystemDesign),
SupportsEventValidation,
]
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public class EditorZone : EditorZoneBase {
private ITemplate _zoneTemplate;
protected override EditorPartCollection CreateEditorParts() {
EditorPartCollection editorParts = new EditorPartCollection();
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) {
EditorPart part = control as EditorPart;
if (part != null) {
editorParts.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 EditorZone.
if (((literal == null) || (literal.Text.Trim().Length != 0)) && !DesignMode) {
throw new InvalidOperationException(SR.GetString(SR.EditorZone_OnlyEditorParts, ID));
}
}
}
}
}
return editorParts;
}
[
Browsable(false),
DefaultValue(null),
PersistenceMode(PersistenceMode.InnerProperty),
TemplateContainer(typeof(EditorZone)),
TemplateInstance(TemplateInstance.Single)
]
public virtual ITemplate ZoneTemplate {
get {
return _zoneTemplate;
}
set {
InvalidateEditorParts();
_zoneTemplate = value;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls.WebParts {
using System;
using System.Collections;
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.EditorZoneDesigner, " + AssemblyRef.SystemDesign),
SupportsEventValidation,
]
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public class EditorZone : EditorZoneBase {
private ITemplate _zoneTemplate;
protected override EditorPartCollection CreateEditorParts() {
EditorPartCollection editorParts = new EditorPartCollection();
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) {
EditorPart part = control as EditorPart;
if (part != null) {
editorParts.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 EditorZone.
if (((literal == null) || (literal.Text.Trim().Length != 0)) && !DesignMode) {
throw new InvalidOperationException(SR.GetString(SR.EditorZone_OnlyEditorParts, ID));
}
}
}
}
}
return editorParts;
}
[
Browsable(false),
DefaultValue(null),
PersistenceMode(PersistenceMode.InnerProperty),
TemplateContainer(typeof(EditorZone)),
TemplateInstance(TemplateInstance.Single)
]
public virtual ITemplate ZoneTemplate {
get {
return _zoneTemplate;
}
set {
InvalidateEditorParts();
_zoneTemplate = value;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- XmlSchemaChoice.cs
- DoubleLinkList.cs
- XamlSerializer.cs
- MultiSelector.cs
- VScrollProperties.cs
- QilChoice.cs
- Msec.cs
- QilDataSource.cs
- LinearGradientBrush.cs
- StylusPointProperties.cs
- objectquery_tresulttype.cs
- StoragePropertyMapping.cs
- XmlEncoding.cs
- DecimalAnimation.cs
- ChangePasswordDesigner.cs
- RequestTimeoutManager.cs
- ChooseAction.cs
- TextElementAutomationPeer.cs
- GradientBrush.cs
- DataServices.cs
- SchemaObjectWriter.cs
- GetPageCompletedEventArgs.cs
- VectorValueSerializer.cs
- FormViewRow.cs
- EncryptedReference.cs
- Rule.cs
- SrgsNameValueTag.cs
- Clipboard.cs
- ContentPosition.cs
- RoleService.cs
- DocumentPageViewAutomationPeer.cs
- SqlDataSourceEnumerator.cs
- TrackingCondition.cs
- DataGridViewRowHeaderCell.cs
- ObjectStateEntryDbDataRecord.cs
- ModelTreeEnumerator.cs
- LogWriteRestartAreaState.cs
- ChannelCacheDefaults.cs
- XdrBuilder.cs
- PlatformNotSupportedException.cs
- ViewStateModeByIdAttribute.cs
- SelectionItemPattern.cs
- LinqDataSourceInsertEventArgs.cs
- ButtonFlatAdapter.cs
- DuplexClientBase.cs
- DependencyObjectProvider.cs
- FixedNode.cs
- PopupEventArgs.cs
- AppSettingsSection.cs
- MetadataArtifactLoaderComposite.cs
- Visual.cs
- BaseParagraph.cs
- securestring.cs
- Property.cs
- StateManagedCollection.cs
- Scene3D.cs
- QilGeneratorEnv.cs
- WindowsGrip.cs
- TemplateInstanceAttribute.cs
- UpdatableGenericsFeature.cs
- UpWmlPageAdapter.cs
- ValidatingCollection.cs
- DataGridAutoFormatDialog.cs
- DesignTimeTemplateParser.cs
- PreProcessInputEventArgs.cs
- RecognizerBase.cs
- FileLogRecord.cs
- XmlAttributeCache.cs
- RubberbandSelector.cs
- SystemNetHelpers.cs
- DataTableMappingCollection.cs
- ListenerElementsCollection.cs
- ActivityCodeDomSerializationManager.cs
- _DomainName.cs
- ContentWrapperAttribute.cs
- FlagsAttribute.cs
- ObjectCloneHelper.cs
- ExceptionHelpers.cs
- DataGridViewRowStateChangedEventArgs.cs
- WorkflowMarkupSerializationProvider.cs
- WS2007HttpBindingElement.cs
- MouseActionValueSerializer.cs
- EventHandlers.cs
- WebPartCancelEventArgs.cs
- SuppressMergeCheckAttribute.cs
- HandleCollector.cs
- CngAlgorithm.cs
- HandleCollector.cs
- GroupBox.cs
- HtmlInputSubmit.cs
- AttachedPropertyBrowsableWhenAttributePresentAttribute.cs
- ImageSource.cs
- RegexRunner.cs
- EdmPropertyAttribute.cs
- SchemaCollectionPreprocessor.cs
- DefaultShape.cs
- DispatcherSynchronizationContext.cs
- UrlMapping.cs
- ExpressionVisitor.cs
- MatrixConverter.cs