Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / UI / WebControls / CompositeControl.cs / 1 / CompositeControl.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls {
using System.ComponentModel;
using System.Security.Permissions;
///
/// Base class for composite controls -- controls that contain other controls and reuse their functionality
/// via class composition. See Chapter 12 in "Developing Microsoft ASP.NET Server Controls and Components."
/// The following classes have copied code from this class (look for "Copied from CompositeControl" comment):
/// - ChangePassword
/// - Login
/// - LoginView
/// - SiteMapPath
///
[
Designer("System.Web.UI.Design.WebControls.CompositeControlDesigner, " + AssemblyRef.SystemDesign)
]
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public abstract class CompositeControl : WebControl, INamingContainer, ICompositeControlDesignerAccessor {
///
/// Ensure that the child controls have been created before returning the controls collection
///
public override ControlCollection Controls {
get {
EnsureChildControls();
return base.Controls;
}
}
///
/// Perform our own databinding, then perform our child controls' databinding.
/// Does not call Base.DataBind(), since we need to call EnsureChildControls() between
/// OnDataBinding() and DataBindChildren().
///
public override void DataBind() {
OnDataBinding(EventArgs.Empty);
EnsureChildControls();
DataBindChildren();
}
protected virtual void RecreateChildControls() {
ChildControlsCreated = false;
EnsureChildControls();
}
// Needed so the CompositeControl renders correctly in the designer, even when it does not have
// an associated ControlDesigner (i.e. it is a child control of another CompositeControl).
protected internal override void Render(HtmlTextWriter writer) {
if (DesignMode) {
EnsureChildControls();
}
base.Render(writer);
}
#region ICompositeControlDesignerAccessor implementation
void ICompositeControlDesignerAccessor.RecreateChildControls() {
RecreateChildControls();
}
#endregion
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls {
using System.ComponentModel;
using System.Security.Permissions;
///
/// Base class for composite controls -- controls that contain other controls and reuse their functionality
/// via class composition. See Chapter 12 in "Developing Microsoft ASP.NET Server Controls and Components."
/// The following classes have copied code from this class (look for "Copied from CompositeControl" comment):
/// - ChangePassword
/// - Login
/// - LoginView
/// - SiteMapPath
///
[
Designer("System.Web.UI.Design.WebControls.CompositeControlDesigner, " + AssemblyRef.SystemDesign)
]
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public abstract class CompositeControl : WebControl, INamingContainer, ICompositeControlDesignerAccessor {
///
/// Ensure that the child controls have been created before returning the controls collection
///
public override ControlCollection Controls {
get {
EnsureChildControls();
return base.Controls;
}
}
///
/// Perform our own databinding, then perform our child controls' databinding.
/// Does not call Base.DataBind(), since we need to call EnsureChildControls() between
/// OnDataBinding() and DataBindChildren().
///
public override void DataBind() {
OnDataBinding(EventArgs.Empty);
EnsureChildControls();
DataBindChildren();
}
protected virtual void RecreateChildControls() {
ChildControlsCreated = false;
EnsureChildControls();
}
// Needed so the CompositeControl renders correctly in the designer, even when it does not have
// an associated ControlDesigner (i.e. it is a child control of another CompositeControl).
protected internal override void Render(HtmlTextWriter writer) {
if (DesignMode) {
EnsureChildControls();
}
base.Render(writer);
}
#region ICompositeControlDesignerAccessor implementation
void ICompositeControlDesignerAccessor.RecreateChildControls() {
RecreateChildControls();
}
#endregion
}
}
// 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
- TypeNameConverter.cs
- SqlGenericUtil.cs
- LongTypeConverter.cs
- UTF7Encoding.cs
- JsonGlobals.cs
- CultureInfoConverter.cs
- DocumentViewer.cs
- _NtlmClient.cs
- XmlDocumentViewSchema.cs
- CapabilitiesAssignment.cs
- BitmapFrame.cs
- xmlglyphRunInfo.cs
- RowSpanVector.cs
- StorageEntityTypeMapping.cs
- RegexRunner.cs
- SemanticKeyElement.cs
- FormsAuthenticationModule.cs
- FileDialog.cs
- WebPartTracker.cs
- WebPageTraceListener.cs
- WebServiceTypeData.cs
- NamespaceEmitter.cs
- TreeNodeEventArgs.cs
- SqlConnectionString.cs
- XPathParser.cs
- _emptywebproxy.cs
- DataGridViewButtonColumn.cs
- ActiveXSite.cs
- BaseDataBoundControl.cs
- PeekCompletedEventArgs.cs
- EventSourceCreationData.cs
- WindowsEditBox.cs
- ByteStream.cs
- SqlDataSourceCommandEventArgs.cs
- AlignmentYValidation.cs
- TypeNameConverter.cs
- ThrowHelper.cs
- SafeViewOfFileHandle.cs
- MimeMapping.cs
- GraphicsPath.cs
- Avt.cs
- RelationshipManager.cs
- ConfigXmlCDataSection.cs
- DataAdapter.cs
- TableParaClient.cs
- WindowPattern.cs
- LinkTarget.cs
- HtmlPanelAdapter.cs
- ScrollViewer.cs
- AnnotationAuthorChangedEventArgs.cs
- CodeTypeDelegate.cs
- HostVisual.cs
- BuildManagerHost.cs
- RegistryPermission.cs
- SourceFilter.cs
- XmlSchemaChoice.cs
- SecurityPolicySection.cs
- NTAccount.cs
- Shape.cs
- Set.cs
- XmlUTF8TextReader.cs
- DataGridViewIntLinkedList.cs
- WebHeaderCollection.cs
- VirtualizingStackPanel.cs
- GeneralTransform3DCollection.cs
- ComPlusDiagnosticTraceRecords.cs
- SqlLiftWhereClauses.cs
- TextParagraph.cs
- ConnectionStringsSection.cs
- BufferedMessageWriter.cs
- TrackBarRenderer.cs
- CacheForPrimitiveTypes.cs
- DBConcurrencyException.cs
- BitVector32.cs
- Point.cs
- XmlSerializerVersionAttribute.cs
- ProtocolsConfigurationHandler.cs
- PageCatalogPartDesigner.cs
- JsonDataContract.cs
- WriteFileContext.cs
- InitializationEventAttribute.cs
- CommunicationException.cs
- CachedPathData.cs
- SkinBuilder.cs
- ContentElement.cs
- XmlQueryStaticData.cs
- Win32.cs
- DateTimeEditor.cs
- BaseContextMenu.cs
- ListBindableAttribute.cs
- MetadataPropertyvalue.cs
- AsyncCompletedEventArgs.cs
- LinkLabel.cs
- SignedPkcs7.cs
- FocusWithinProperty.cs
- OneWayBindingElement.cs
- SR.Designer.cs
- PointValueSerializer.cs
- HostedTransportConfigurationManager.cs
- SecureUICommand.cs