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
- EntityModelBuildProvider.cs
- listitem.cs
- AcceptorSessionSymmetricTransportSecurityProtocol.cs
- HtmlForm.cs
- Path.cs
- ipaddressinformationcollection.cs
- Base64Stream.cs
- SettingsPropertyValueCollection.cs
- OutOfProcStateClientManager.cs
- XmlNodeList.cs
- ValidationPropertyAttribute.cs
- DockPattern.cs
- NoneExcludedImageIndexConverter.cs
- ClientTargetSection.cs
- MaskInputRejectedEventArgs.cs
- Addressing.cs
- ExpressionBuilderCollection.cs
- XmlAttributes.cs
- TextDecorationUnitValidation.cs
- _Rfc2616CacheValidators.cs
- XmlNavigatorStack.cs
- PlainXmlWriter.cs
- BitmapData.cs
- ContentElementAutomationPeer.cs
- RunInstallerAttribute.cs
- JsonClassDataContract.cs
- GradientStop.cs
- SafeNativeMethods.cs
- ContentOperations.cs
- XmlSchemaIdentityConstraint.cs
- RoleExceptions.cs
- DockingAttribute.cs
- FileSystemEventArgs.cs
- BitmapSourceSafeMILHandle.cs
- TextUtf8RawTextWriter.cs
- ZeroOpNode.cs
- UnicodeEncoding.cs
- SQLCharsStorage.cs
- XmlEncodedRawTextWriter.cs
- CellParagraph.cs
- CodeMethodInvokeExpression.cs
- ControlCollection.cs
- ToolStripItemDataObject.cs
- CalloutQueueItem.cs
- BitArray.cs
- MouseBinding.cs
- DataControlImageButton.cs
- VirtualPath.cs
- RuntimeConfigurationRecord.cs
- ExceptionUtil.cs
- DataGridViewControlCollection.cs
- MsiStyleLogWriter.cs
- TemplatePropertyEntry.cs
- MaskedTextBoxTextEditor.cs
- EntityDataSourceDesigner.cs
- EqualityComparer.cs
- ObjectQuery_EntitySqlExtensions.cs
- WindowsEditBox.cs
- SafeProcessHandle.cs
- MsmqInputChannelListenerBase.cs
- Control.cs
- InputScope.cs
- CodeDomConfigurationHandler.cs
- AlphaSortedEnumConverter.cs
- RecognizerBase.cs
- AutomationPropertyInfo.cs
- OdbcDataAdapter.cs
- HasCopySemanticsAttribute.cs
- SchemaDeclBase.cs
- InvalidWMPVersionException.cs
- Mutex.cs
- AppManager.cs
- X509CertificateStore.cs
- HandlerMappingMemo.cs
- SqlBinder.cs
- HtmlTableRowCollection.cs
- UpDownBase.cs
- _DigestClient.cs
- TypedRowHandler.cs
- QueuePathEditor.cs
- SynchronizationValidator.cs
- VScrollBar.cs
- Helpers.cs
- CachedPathData.cs
- CryptoProvider.cs
- TypeContext.cs
- HtmlInputText.cs
- Win32.cs
- DeferredBinaryDeserializerExtension.cs
- DataGridViewTextBoxEditingControl.cs
- assertwrapper.cs
- IndexerHelper.cs
- UITypeEditor.cs
- SmtpReplyReaderFactory.cs
- unitconverter.cs
- TCPClient.cs
- SmtpDigestAuthenticationModule.cs
- TagPrefixAttribute.cs
- OleDbDataAdapter.cs
- ToolStripKeyboardHandlingService.cs