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
- TableItemStyle.cs
- ProjectedWrapper.cs
- ChangePasswordDesigner.cs
- Padding.cs
- PolyQuadraticBezierSegment.cs
- SqlUdtInfo.cs
- DataGridCellAutomationPeer.cs
- ManifestResourceInfo.cs
- RepeaterItem.cs
- Trace.cs
- PaperSize.cs
- CompressStream.cs
- Pair.cs
- DynamicExpression.cs
- DecimalStorage.cs
- BaseCollection.cs
- ApplicationId.cs
- HandlerWithFactory.cs
- TypeUtil.cs
- Floater.cs
- QilLoop.cs
- Tokenizer.cs
- CellTreeNodeVisitors.cs
- ReflectionUtil.cs
- GlobalEventManager.cs
- BezierSegment.cs
- ToolStripManager.cs
- SplitContainer.cs
- XPathParser.cs
- StaticTextPointer.cs
- CompressedStack.cs
- _Win32.cs
- ReaderWriterLock.cs
- SpnegoTokenAuthenticator.cs
- EntityDesignPluralizationHandler.cs
- WebPartEventArgs.cs
- CodeDefaultValueExpression.cs
- CodeSnippetExpression.cs
- XmlSerializerNamespaces.cs
- GeneralTransform3DGroup.cs
- MemoryFailPoint.cs
- TaskDesigner.cs
- IBuiltInEvidence.cs
- SqlUtils.cs
- PrintPreviewGraphics.cs
- PublisherMembershipCondition.cs
- CombinedGeometry.cs
- CodeAssignStatement.cs
- ProgressiveCrcCalculatingStream.cs
- DataGridViewCellFormattingEventArgs.cs
- DataGridCellItemAutomationPeer.cs
- OAVariantLib.cs
- UpdatePanel.cs
- RichTextBoxAutomationPeer.cs
- XPathMultyIterator.cs
- ConfigXmlText.cs
- MetadataUtilsSmi.cs
- XsltLoader.cs
- EditorZoneBase.cs
- EntityContainerEntitySetDefiningQuery.cs
- ApplicationFileCodeDomTreeGenerator.cs
- MissingManifestResourceException.cs
- DelimitedListTraceListener.cs
- XmlCharType.cs
- RichTextBox.cs
- SolidColorBrush.cs
- PolicyStatement.cs
- _Rfc2616CacheValidators.cs
- SchemaImporter.cs
- ExpressionParser.cs
- GradientStopCollection.cs
- AlternateView.cs
- URLAttribute.cs
- EventHandlersDesigner.cs
- ApplicationFileCodeDomTreeGenerator.cs
- GroupPartitionExpr.cs
- HMACSHA256.cs
- LayoutManager.cs
- ConfigurationErrorsException.cs
- ServiceControllerDesigner.cs
- versioninfo.cs
- DesignerSerializationManager.cs
- ObservableDictionary.cs
- SettingsProperty.cs
- PageCache.cs
- BamlRecords.cs
- DelegateArgument.cs
- CacheForPrimitiveTypes.cs
- ProcessInputEventArgs.cs
- InternalMappingException.cs
- DeflateStream.cs
- SchemaType.cs
- FilterElement.cs
- EntityDataSourceWrapper.cs
- XamlVector3DCollectionSerializer.cs
- CompilationUtil.cs
- XComponentModel.cs
- SecurityState.cs
- PathParser.cs
- X509SecurityTokenAuthenticator.cs