Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebControls / ChildTable.cs / 1305376 / 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- StringSorter.cs
- MsmqIntegrationInputMessage.cs
- WebBrowserNavigatingEventHandler.cs
- TemplateBindingExpression.cs
- DateTime.cs
- ReferentialConstraint.cs
- StylusButton.cs
- UnsafeCollabNativeMethods.cs
- TryCatchDesigner.xaml.cs
- DataStreams.cs
- DefaultAssemblyResolver.cs
- AnnotationDocumentPaginator.cs
- FormattedTextSymbols.cs
- PropertyGridEditorPart.cs
- WebPartMovingEventArgs.cs
- JournalEntryStack.cs
- BrowserDefinition.cs
- EmptyReadOnlyDictionaryInternal.cs
- HtmlTextArea.cs
- DictionaryBase.cs
- TracedNativeMethods.cs
- _HTTPDateParse.cs
- ConnectorSelectionGlyph.cs
- MenuItem.cs
- ObjectView.cs
- TemplateControlBuildProvider.cs
- XmlDictionaryString.cs
- UnsafeCollabNativeMethods.cs
- InputLanguageCollection.cs
- SchemaCollectionCompiler.cs
- SelectionGlyphBase.cs
- Normalizer.cs
- OpenFileDialog.cs
- BamlTreeNode.cs
- RadioButtonBaseAdapter.cs
- RSAPKCS1SignatureFormatter.cs
- CodeNamespaceCollection.cs
- TextSyndicationContentKindHelper.cs
- RenderingEventArgs.cs
- Stylesheet.cs
- CodePrimitiveExpression.cs
- MonitoringDescriptionAttribute.cs
- ImageSourceValueSerializer.cs
- XmlDataLoader.cs
- SiteMapHierarchicalDataSourceView.cs
- DelayedRegex.cs
- LockedAssemblyCache.cs
- StateMachineWorkflowDesigner.cs
- StylusButtonEventArgs.cs
- BindingSource.cs
- AnnotationResource.cs
- GatewayIPAddressInformationCollection.cs
- ConfigurationManagerHelperFactory.cs
- UserControlAutomationPeer.cs
- AdornerDecorator.cs
- DataGridViewLinkCell.cs
- URI.cs
- PropertyInformationCollection.cs
- SafeLocalAllocation.cs
- WpfXamlLoader.cs
- StagingAreaInputItem.cs
- LocalServiceSecuritySettings.cs
- MultipartIdentifier.cs
- LocatorPartList.cs
- GenericsNotImplementedException.cs
- ToolBarButton.cs
- COMException.cs
- ControlType.cs
- WebBrowsableAttribute.cs
- HttpModuleCollection.cs
- Internal.cs
- SmtpMail.cs
- LassoSelectionBehavior.cs
- HMACSHA1.cs
- WebBaseEventKeyComparer.cs
- EmbeddedMailObjectsCollection.cs
- SoapExtension.cs
- TargetControlTypeCache.cs
- PickBranch.cs
- PropertyItemInternal.cs
- DependencyObjectProvider.cs
- VisualTarget.cs
- OutputCacheSection.cs
- RepeaterItemEventArgs.cs
- ChannelSinkStacks.cs
- HelpInfo.cs
- FullTrustAssembly.cs
- LinearGradientBrush.cs
- BaseInfoTable.cs
- StaticSiteMapProvider.cs
- Guid.cs
- DmlSqlGenerator.cs
- DataViewListener.cs
- AttachedPropertyBrowsableAttribute.cs
- DataConnectionHelper.cs
- TypeBuilder.cs
- ModelPerspective.cs
- InvalidComObjectException.cs
- ExpressionConverter.cs
- ResourcesBuildProvider.cs