Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / UI / WebControls / ChildTable.cs / 1 / 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
- returneventsaver.cs
- PlatformNotSupportedException.cs
- XmlExtensionFunction.cs
- relpropertyhelper.cs
- LogPolicy.cs
- DataListCommandEventArgs.cs
- TranslateTransform.cs
- MaterializeFromAtom.cs
- Point3DAnimation.cs
- InvalidEnumArgumentException.cs
- XsltLibrary.cs
- PrivilegedConfigurationManager.cs
- HtmlEncodedRawTextWriter.cs
- RijndaelCryptoServiceProvider.cs
- XPathEmptyIterator.cs
- AuthorizationRuleCollection.cs
- ColorPalette.cs
- MethodBuilderInstantiation.cs
- ImageAttributes.cs
- WebPartHeaderCloseVerb.cs
- WindowsListViewGroup.cs
- PersonalizationEntry.cs
- InfoCard.cs
- PageBuildProvider.cs
- Transactions.cs
- CodeRegionDirective.cs
- ProvidePropertyAttribute.cs
- NamespaceDecl.cs
- MdImport.cs
- RealProxy.cs
- SqlUserDefinedTypeAttribute.cs
- EncodingNLS.cs
- Cursors.cs
- SectionInput.cs
- XmlComment.cs
- HashMembershipCondition.cs
- EndOfStreamException.cs
- ResourceLoader.cs
- ObjectSet.cs
- ColorBuilder.cs
- DbXmlEnabledProviderManifest.cs
- TextBox.cs
- Accessible.cs
- Properties.cs
- QilPatternVisitor.cs
- MediaPlayer.cs
- TextEditorDragDrop.cs
- ContextInformation.cs
- DependencyProperty.cs
- MachineKeySection.cs
- DescriptionCreator.cs
- SiteMembershipCondition.cs
- ExpressionConverter.cs
- SmiConnection.cs
- Point.cs
- X509CertificateCollection.cs
- GrammarBuilderBase.cs
- BindingSource.cs
- XmlTextEncoder.cs
- ComplexType.cs
- SourceFileInfo.cs
- CompositeActivityTypeDescriptor.cs
- ToolStripItemImageRenderEventArgs.cs
- RegexCapture.cs
- RenderContext.cs
- ComponentChangedEvent.cs
- SymbolMethod.cs
- LinearGradientBrush.cs
- CaseExpr.cs
- ADConnectionHelper.cs
- KeyNotFoundException.cs
- ThrowHelper.cs
- XomlCompilerResults.cs
- WindowsGraphics2.cs
- ClientOptions.cs
- FileSystemInfo.cs
- TreeNodeStyleCollection.cs
- ProtocolViolationException.cs
- SectionUpdates.cs
- PageCache.cs
- GroupAggregateExpr.cs
- MULTI_QI.cs
- SocketElement.cs
- ComMethodElementCollection.cs
- DocumentViewerBase.cs
- DataControlLinkButton.cs
- DesignerAutoFormat.cs
- ConnectionManagementElement.cs
- FilterQueryOptionExpression.cs
- SkinIDTypeConverter.cs
- TextRangeSerialization.cs
- BigInt.cs
- GACIdentityPermission.cs
- ParameterReplacerVisitor.cs
- XmlILConstructAnalyzer.cs
- FontInfo.cs
- ValidationEventArgs.cs
- DelegateSerializationHolder.cs
- GCHandleCookieTable.cs
- TransformedBitmap.cs