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
- VisemeEventArgs.cs
- SessionIDManager.cs
- UnmanagedMemoryStream.cs
- ColumnMapProcessor.cs
- GridViewColumnHeader.cs
- SoapReflectionImporter.cs
- Int16KeyFrameCollection.cs
- HelpInfo.cs
- CredentialCache.cs
- AddInAdapter.cs
- _RequestCacheProtocol.cs
- ConfigDefinitionUpdates.cs
- EventDescriptorCollection.cs
- ElementUtil.cs
- ObjectSecurity.cs
- ArithmeticException.cs
- ContourSegment.cs
- PropertyDescriptor.cs
- TrustManager.cs
- LicenseContext.cs
- GridViewRowPresenterBase.cs
- SelectionEditor.cs
- WorkflowMarkupElementEventArgs.cs
- DoubleAnimation.cs
- SqlOuterApplyReducer.cs
- OutputCacheProfile.cs
- SchemaImporterExtension.cs
- ToolStripEditorManager.cs
- Color.cs
- PlatformNotSupportedException.cs
- PropertyCondition.cs
- SecurityChannelFactory.cs
- DataGridViewComboBoxCell.cs
- FileLogRecordHeader.cs
- ToolboxControl.cs
- DiffuseMaterial.cs
- GenericPrincipal.cs
- BinaryConverter.cs
- DataRowChangeEvent.cs
- BufferModesCollection.cs
- BaseDataList.cs
- CompilationRelaxations.cs
- IndentTextWriter.cs
- DrawingAttributeSerializer.cs
- OracleColumn.cs
- ContextMenuStripActionList.cs
- KeyValueConfigurationCollection.cs
- SettingsPropertyValue.cs
- SerializationBinder.cs
- DataSourceView.cs
- SHA512Managed.cs
- RequestCache.cs
- DecimalAnimationBase.cs
- DataKeyArray.cs
- SafeProcessHandle.cs
- OleDbPropertySetGuid.cs
- HandleRef.cs
- XmlDataLoader.cs
- RowUpdatedEventArgs.cs
- CLSCompliantAttribute.cs
- WebServiceHostFactory.cs
- Authorization.cs
- Transform3DGroup.cs
- BitmapDecoder.cs
- XPathParser.cs
- PrintingPermissionAttribute.cs
- Int32CollectionConverter.cs
- IsolatedStorageFilePermission.cs
- ErrorRuntimeConfig.cs
- TextParagraph.cs
- DateTimeAutomationPeer.cs
- HyperLink.cs
- Win32MouseDevice.cs
- SqlUdtInfo.cs
- GroupJoinQueryOperator.cs
- BaseProcessor.cs
- ShapingEngine.cs
- ButtonColumn.cs
- SendMessageContent.cs
- XmlAutoDetectWriter.cs
- AxDesigner.cs
- ControlFilterExpression.cs
- DirectionalLight.cs
- DesignerCategoryAttribute.cs
- FrameworkElementAutomationPeer.cs
- DetailsViewModeEventArgs.cs
- FloaterBaseParagraph.cs
- HostProtectionPermission.cs
- DateTimeFormatInfo.cs
- DoubleConverter.cs
- FunctionDetailsReader.cs
- XmlSequenceWriter.cs
- ContainerUIElement3D.cs
- HtmlEmptyTagControlBuilder.cs
- ResourceProviderFactory.cs
- AssociationTypeEmitter.cs
- MessageHeaderException.cs
- SafeFreeMibTable.cs
- InvalidOleVariantTypeException.cs
- Attribute.cs