Code:
/ FX-1434 / FX-1434 / 1.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
- ComplexPropertyEntry.cs
- HelpEvent.cs
- RoutedUICommand.cs
- TypeConverter.cs
- SystemParameters.cs
- EmbossBitmapEffect.cs
- CapacityStreamGeometryContext.cs
- SpellCheck.cs
- ProtectedConfigurationProviderCollection.cs
- InkCanvas.cs
- RawStylusSystemGestureInputReport.cs
- CommandDevice.cs
- BaseCAMarshaler.cs
- RegexStringValidatorAttribute.cs
- SchemaImporter.cs
- BitmapEffectInput.cs
- SymbolUsageManager.cs
- HwndSourceKeyboardInputSite.cs
- EnumMemberAttribute.cs
- RefreshEventArgs.cs
- XmlSchemaProviderAttribute.cs
- ColumnMapProcessor.cs
- RangeValuePatternIdentifiers.cs
- ComboBoxRenderer.cs
- ObjectQueryProvider.cs
- IdentityHolder.cs
- BinHexEncoder.cs
- DirectoryObjectSecurity.cs
- InvalidDataException.cs
- ToolStripButton.cs
- WebPartAuthorizationEventArgs.cs
- CryptoConfig.cs
- FactoryId.cs
- OleDbDataReader.cs
- _CommandStream.cs
- WorkItem.cs
- DataGridViewRowStateChangedEventArgs.cs
- TreeNodeSelectionProcessor.cs
- XsdCachingReader.cs
- NextPreviousPagerField.cs
- SchemaCollectionPreprocessor.cs
- OpenFileDialog.cs
- SortedDictionary.cs
- SoapInteropTypes.cs
- IImplicitResourceProvider.cs
- MetadataWorkspace.cs
- DefaultCommandConverter.cs
- DefaultValueTypeConverter.cs
- SamlAttribute.cs
- DataGridViewColumnTypeEditor.cs
- UIHelper.cs
- FocusTracker.cs
- ITreeGenerator.cs
- LocationSectionRecord.cs
- TraceLevelStore.cs
- PropertyOverridesTypeEditor.cs
- HMACSHA384.cs
- Mouse.cs
- ScriptControlDescriptor.cs
- AsnEncodedData.cs
- InputLanguageEventArgs.cs
- XmlByteStreamReader.cs
- DataGridViewRowContextMenuStripNeededEventArgs.cs
- BitmapImage.cs
- BaseTemplateParser.cs
- SortQuery.cs
- Propagator.cs
- AuditLogLocation.cs
- PreservationFileWriter.cs
- SoapSchemaMember.cs
- TextEditorLists.cs
- HtmlWindow.cs
- Root.cs
- Int16KeyFrameCollection.cs
- ObsoleteAttribute.cs
- HtmlContainerControl.cs
- ListBindingConverter.cs
- ObjectConverter.cs
- __TransparentProxy.cs
- PriorityBindingExpression.cs
- ClientEventManager.cs
- DeviceContext2.cs
- InternalCache.cs
- DateTimeOffsetAdapter.cs
- XmlSchemas.cs
- Serializer.cs
- X509Certificate2.cs
- XpsS0ValidatingLoader.cs
- ToolStripLabel.cs
- DecryptRequest.cs
- ParagraphVisual.cs
- controlskin.cs
- DataRowCollection.cs
- IIS7UserPrincipal.cs
- CacheOutputQuery.cs
- TypeReference.cs
- OperationCanceledException.cs
- AssociationTypeEmitter.cs
- XPathDocument.cs
- BinHexDecoder.cs