Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebControls / ChildTable.cs / 2 / 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; } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- InvariantComparer.cs
- RowSpanVector.cs
- ProfileInfo.cs
- ComplusEndpointConfigContainer.cs
- IdentityNotMappedException.cs
- BeginStoryboard.cs
- __TransparentProxy.cs
- Panel.cs
- ParenthesizePropertyNameAttribute.cs
- DispatcherHooks.cs
- SolidColorBrush.cs
- ValidationErrorCollection.cs
- XmlComplianceUtil.cs
- RotationValidation.cs
- QilList.cs
- ReachDocumentPageSerializer.cs
- TextAnchor.cs
- WithParamAction.cs
- GridProviderWrapper.cs
- InputProviderSite.cs
- DataGridViewRowCancelEventArgs.cs
- NamespaceTable.cs
- QueryActivatableWorkflowsCommand.cs
- NamedPermissionSet.cs
- CollaborationHelperFunctions.cs
- OdbcDataAdapter.cs
- DataSourceComponent.cs
- StatementContext.cs
- WorkflowOperationAsyncResult.cs
- CompositeFontParser.cs
- ByteStack.cs
- DbProviderFactories.cs
- MediaEntryAttribute.cs
- DesignerCatalogPartChrome.cs
- DependencyPropertyKind.cs
- FixedPage.cs
- sqlstateclientmanager.cs
- M3DUtil.cs
- ClaimComparer.cs
- FontWeights.cs
- ConstraintStruct.cs
- Module.cs
- EventManager.cs
- SystemIPv6InterfaceProperties.cs
- TcpAppDomainProtocolHandler.cs
- RelationshipConverter.cs
- AstTree.cs
- ClientRuntimeConfig.cs
- PathNode.cs
- MeshGeometry3D.cs
- GeometryHitTestParameters.cs
- VersionPair.cs
- Resources.Designer.cs
- PropertyConverter.cs
- FormsAuthenticationUserCollection.cs
- SqlProfileProvider.cs
- RoleGroup.cs
- QilGeneratorEnv.cs
- Parser.cs
- ResourceExpressionBuilder.cs
- DataGridDesigner.cs
- WebPartZoneDesigner.cs
- PartDesigner.cs
- CompModHelpers.cs
- Thumb.cs
- PropertyInformation.cs
- StorageSetMapping.cs
- CodeGeneratorOptions.cs
- XmlDigitalSignatureProcessor.cs
- VsPropertyGrid.cs
- exports.cs
- SharedTcpTransportManager.cs
- QilTernary.cs
- TreeNodeEventArgs.cs
- PropertyNames.cs
- ConnectionStringSettings.cs
- VideoDrawing.cs
- ControlHelper.cs
- Brush.cs
- DockProviderWrapper.cs
- SecurityManager.cs
- CounterCreationDataCollection.cs
- _ServiceNameStore.cs
- CaseInsensitiveComparer.cs
- HtmlInputButton.cs
- CellIdBoolean.cs
- ColorPalette.cs
- NativeRightsManagementAPIsStructures.cs
- ContainerVisual.cs
- BindingSourceDesigner.cs
- XmlDocument.cs
- XamlFigureLengthSerializer.cs
- VisualStyleTypesAndProperties.cs
- LinqDataSourceDisposeEventArgs.cs
- Console.cs
- CultureInfoConverter.cs
- MultiSelectRootGridEntry.cs
- BasicKeyConstraint.cs
- WebPartDisplayModeEventArgs.cs
- StyleCollection.cs