Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / WebControls / ChildTable.cs / 3 / ChildTable.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System; using System.ComponentModel; using System.Web.UI; using System.Web.Util; [ ToolboxItem(false), SupportsEventValidation, ] ////// /// Used by composite controls that are based on a table, that only render /// their contents. /// Used to render out an ID attribute representing the parent composite control /// if an ID is not actually set on this table. /// internal class ChildTable : Table { private int _parentLevel; private string _parentID; private bool _parentIDSet; ///internal ChildTable() : this(1) { } /// internal ChildTable(int parentLevel) { Debug.Assert(parentLevel >= 1); _parentLevel = parentLevel; _parentIDSet = false; } internal ChildTable(string parentID) { _parentID = parentID; _parentIDSet = true; } /// protected override void AddAttributesToRender(HtmlTextWriter writer) { base.AddAttributesToRender(writer); string parentID = _parentID; if (!_parentIDSet) { parentID = GetParentID(); } if (parentID != null) { writer.AddAttribute(HtmlTextWriterAttribute.Id, parentID); } } /// /// Gets the ClientID of the parent whose ID is supposed to be used in the rendering. /// private string GetParentID() { if (ID != null) { return null; } Control parent = this; for (int i = 0; i < _parentLevel; i++) { parent = parent.Parent; if (parent == null) { break; } } Debug.Assert(parent != null); if (parent != null) { string id = parent.ID; if (!String.IsNullOrEmpty(id)) { return parent.ClientID; } } return null; } } } // 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
- HandlerFactoryCache.cs
- EventLogConfiguration.cs
- CanonicalizationDriver.cs
- XmlElementCollection.cs
- AsyncPostBackErrorEventArgs.cs
- WebPartDeleteVerb.cs
- ConnectionManagementElementCollection.cs
- Trace.cs
- SingleTagSectionHandler.cs
- MessageQueueInstaller.cs
- AssemblyResourceLoader.cs
- BinarySerializer.cs
- ProxyWebPartConnectionCollection.cs
- CollectionType.cs
- SortAction.cs
- UnsafeNativeMethods.cs
- ExtenderProvidedPropertyAttribute.cs
- Binding.cs
- InternalControlCollection.cs
- recordstate.cs
- DataSourceSelectArguments.cs
- IItemContainerGenerator.cs
- TypedReference.cs
- IndexOutOfRangeException.cs
- PenThreadWorker.cs
- PolicyLevel.cs
- PermissionToken.cs
- WeakReference.cs
- HMACSHA512.cs
- AdPostCacheSubstitution.cs
- PerformanceCounterPermissionEntry.cs
- XLinq.cs
- ViewGenResults.cs
- ActivityMarkupSerializer.cs
- XmlExceptionHelper.cs
- ColumnMap.cs
- WebPartMinimizeVerb.cs
- SqlTriggerContext.cs
- BindingExpression.cs
- Relationship.cs
- Scene3D.cs
- MenuEventArgs.cs
- SubMenuStyle.cs
- TogglePatternIdentifiers.cs
- FrameworkElement.cs
- PropertyIdentifier.cs
- EventRoute.cs
- TimelineGroup.cs
- AppDomainInstanceProvider.cs
- TypeUtil.cs
- XmlSchemaResource.cs
- WindowsStartMenu.cs
- DefaultDiscoveryService.cs
- OptionalColumn.cs
- RequestUriProcessor.cs
- ChannelManager.cs
- WindowsListViewSubItem.cs
- FrameworkPropertyMetadata.cs
- XpsDocument.cs
- MailWebEventProvider.cs
- DataGridViewCellCollection.cs
- EndpointIdentity.cs
- OutOfMemoryException.cs
- ZipIOExtraFieldPaddingElement.cs
- WarningException.cs
- TransactionTable.cs
- RequestSecurityToken.cs
- LoginName.cs
- DeclarativeCatalogPart.cs
- followingquery.cs
- diagnosticsswitches.cs
- TitleStyle.cs
- TableParagraph.cs
- ObjectComplexPropertyMapping.cs
- TextTreeObjectNode.cs
- KeyGestureValueSerializer.cs
- UrlRoutingHandler.cs
- ProcessingInstructionAction.cs
- MenuItem.cs
- IteratorFilter.cs
- TreeWalkHelper.cs
- TypeSemantics.cs
- AppDomain.cs
- BinaryNode.cs
- CodeAccessSecurityEngine.cs
- MetadataFile.cs
- EntityModelSchemaGenerator.cs
- RectangleGeometry.cs
- EventPropertyMap.cs
- LayoutManager.cs
- PropertyGridCommands.cs
- ToolstripProfessionalRenderer.cs
- ObjectItemNoOpAssemblyLoader.cs
- NativeMethods.cs
- COM2ExtendedTypeConverter.cs
- PlainXmlSerializer.cs
- DesignerSerializationOptionsAttribute.cs
- Tokenizer.cs
- BooleanExpr.cs
- SiteMapDataSource.cs