Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / UI / WebControls / ChildTable.cs / 5 / 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. // //----------------------------------------------------------------------------- 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ElementsClipboardData.cs
- complextypematerializer.cs
- ToolStripItemClickedEventArgs.cs
- HtmlContainerControl.cs
- RectangleGeometry.cs
- SortDescription.cs
- _SSPISessionCache.cs
- HttpListenerException.cs
- XmlSchemaCollection.cs
- ipaddressinformationcollection.cs
- VolatileEnlistmentState.cs
- SafeIUnknown.cs
- XPathDescendantIterator.cs
- XpsFixedPageReaderWriter.cs
- FormsIdentity.cs
- RIPEMD160.cs
- ManagedIStream.cs
- WebPartAddingEventArgs.cs
- SingleKeyFrameCollection.cs
- CatalogZoneDesigner.cs
- TextCompositionEventArgs.cs
- BamlVersionHeader.cs
- WeakReadOnlyCollection.cs
- WebScriptClientGenerator.cs
- DivideByZeroException.cs
- AdRotator.cs
- SQLStringStorage.cs
- PageSettings.cs
- GridViewRowCollection.cs
- WindowsAuthenticationEventArgs.cs
- UniqueIdentifierService.cs
- XPathArrayIterator.cs
- FormatterConverter.cs
- TextWriter.cs
- SmiRecordBuffer.cs
- XmlLoader.cs
- MailMessage.cs
- GradientStopCollection.cs
- StringStorage.cs
- GridViewDeletedEventArgs.cs
- NavigationService.cs
- BinaryMethodMessage.cs
- DocumentPage.cs
- EmissiveMaterial.cs
- safesecurityhelperavalon.cs
- LiteralSubsegment.cs
- TypeBuilderInstantiation.cs
- HtmlTitle.cs
- CommandBinding.cs
- DrawingGroup.cs
- ISO2022Encoding.cs
- DocumentXPathNavigator.cs
- BamlTreeNode.cs
- PassportIdentity.cs
- ApplicationBuildProvider.cs
- WeakHashtable.cs
- OnOperation.cs
- Gdiplus.cs
- UdpDiscoveryEndpointElement.cs
- ImageField.cs
- MemberBinding.cs
- LicenseException.cs
- DocumentViewerBaseAutomationPeer.cs
- HtmlInputImage.cs
- TypeNameConverter.cs
- XmlDocumentSerializer.cs
- XsltCompileContext.cs
- CompleteWizardStep.cs
- xmlfixedPageInfo.cs
- ApplicationException.cs
- WebBrowsableAttribute.cs
- DirectoryObjectSecurity.cs
- LocationSectionRecord.cs
- LostFocusEventManager.cs
- OdbcConnectionOpen.cs
- DocumentOrderComparer.cs
- EventLogPermission.cs
- SafeNativeMethods.cs
- RepeaterItem.cs
- DrawingVisual.cs
- RTTypeWrapper.cs
- BinaryNode.cs
- PreviewKeyDownEventArgs.cs
- BasicCommandTreeVisitor.cs
- FileDialog_Vista.cs
- RenderCapability.cs
- RemotingServices.cs
- CacheSection.cs
- ClassHandlersStore.cs
- WebPartDisplayModeCollection.cs
- MaskedTextBox.cs
- DbgUtil.cs
- PermissionListSet.cs
- WinInetCache.cs
- SectionInformation.cs
- DeflateStream.cs
- SoapInteropTypes.cs
- ColorConvertedBitmap.cs
- KeyInstance.cs
- HtmlTable.cs