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
- CodeGeneratorOptions.cs
- JapaneseLunisolarCalendar.cs
- XmlSchemaSimpleType.cs
- ipaddressinformationcollection.cs
- TextRangeEditTables.cs
- DiscoveryDocumentSearchPattern.cs
- UserControlBuildProvider.cs
- ImportCatalogPart.cs
- AllMembershipCondition.cs
- OutputWindow.cs
- TabPanel.cs
- ReferenceSchema.cs
- RuntimeHandles.cs
- StringOutput.cs
- TextRenderer.cs
- TemplateInstanceAttribute.cs
- TdsEnums.cs
- LoadRetryAsyncResult.cs
- FontStyle.cs
- TextBoxBase.cs
- CodeRemoveEventStatement.cs
- BindingListCollectionView.cs
- ContextMarshalException.cs
- MobileUserControlDesigner.cs
- WmpBitmapDecoder.cs
- BoundsDrawingContextWalker.cs
- EntityProviderFactory.cs
- Exceptions.cs
- ToolstripProfessionalRenderer.cs
- BuildDependencySet.cs
- HttpContextWrapper.cs
- MenuAdapter.cs
- SoapCodeExporter.cs
- TagPrefixInfo.cs
- GridViewSelectEventArgs.cs
- BaseDataBoundControlDesigner.cs
- LicenseException.cs
- PasswordTextContainer.cs
- DialogResultConverter.cs
- Types.cs
- ElementProxy.cs
- NavigationEventArgs.cs
- DropSource.cs
- ItemCheckedEvent.cs
- Stackframe.cs
- CssClassPropertyAttribute.cs
- UIElement.cs
- UrlMappingsModule.cs
- CodeMethodReturnStatement.cs
- TemplateBindingExpressionConverter.cs
- RichTextBox.cs
- MergeFailedEvent.cs
- GestureRecognitionResult.cs
- RecommendedAsConfigurableAttribute.cs
- ClientScriptManager.cs
- TypeUsage.cs
- XmlHierarchyData.cs
- AnonymousIdentificationModule.cs
- QuaternionConverter.cs
- ZipIOLocalFileBlock.cs
- EncryptedKey.cs
- DependencyPropertyValueSerializer.cs
- DocumentGrid.cs
- AuthenticationService.cs
- XmlCharCheckingReader.cs
- SqlDataSourceSelectingEventArgs.cs
- MarkupCompiler.cs
- DoubleConverter.cs
- PeerNameRecordCollection.cs
- HMACMD5.cs
- XmlEntityReference.cs
- SqlReorderer.cs
- NetPeerTcpBindingCollectionElement.cs
- StrongNameIdentityPermission.cs
- ExeContext.cs
- ComponentChangedEvent.cs
- RSAPKCS1KeyExchangeFormatter.cs
- SpeechRecognitionEngine.cs
- SafeWaitHandle.cs
- IsolatedStorageFile.cs
- PolicyChain.cs
- SocketPermission.cs
- PasswordDeriveBytes.cs
- RecordManager.cs
- Expression.cs
- HyperlinkAutomationPeer.cs
- PathNode.cs
- SqlNamer.cs
- GridViewEditEventArgs.cs
- DbDataRecord.cs
- OracleConnectionString.cs
- TextBox.cs
- XmlSchemaExporter.cs
- MimeAnyImporter.cs
- DelegateHelpers.cs
- WebMessageBodyStyleHelper.cs
- CharEntityEncoderFallback.cs
- WebRequestModuleElementCollection.cs
- WebPartCollection.cs
- DesignTimeValidationFeature.cs