Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / 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
- SQLBoolean.cs
- XmlUrlResolver.cs
- FilterException.cs
- PersonalizationStateInfoCollection.cs
- FragmentQuery.cs
- documentsequencetextcontainer.cs
- DPAPIProtectedConfigurationProvider.cs
- SQLDateTime.cs
- FixedStringLookup.cs
- ValidateNames.cs
- MarkupObject.cs
- Debug.cs
- LostFocusEventManager.cs
- DoubleAnimationBase.cs
- ClientCultureInfo.cs
- HttpChannelBindingToken.cs
- TemplateBuilder.cs
- ConsumerConnectionPointCollection.cs
- XmlDataContract.cs
- PolicyValidationException.cs
- RequestSecurityTokenForGetBrowserToken.cs
- LoaderAllocator.cs
- TextChange.cs
- DNS.cs
- HiddenFieldPageStatePersister.cs
- OleDbMetaDataFactory.cs
- __ConsoleStream.cs
- FileSystemEventArgs.cs
- _Events.cs
- XmlTextReader.cs
- ClientType.cs
- ProgressBar.cs
- JsonFormatWriterGenerator.cs
- MaskedTextBox.cs
- TemplateKeyConverter.cs
- XmlQueryCardinality.cs
- GenericArgumentsUpdater.cs
- ConfigUtil.cs
- SrgsNameValueTag.cs
- _PooledStream.cs
- SQLRoleProvider.cs
- NativeMethods.cs
- HashSetDebugView.cs
- CachedTypeface.cs
- FormViewUpdateEventArgs.cs
- HtmlEmptyTagControlBuilder.cs
- DesignerValidatorAdapter.cs
- ControllableStoryboardAction.cs
- CounterCreationDataCollection.cs
- DataMember.cs
- WinFormsUtils.cs
- DataGridAutomationPeer.cs
- Console.cs
- WindowsToolbarItemAsMenuItem.cs
- AuthStoreRoleProvider.cs
- WsatProxy.cs
- PropertyMappingExceptionEventArgs.cs
- CalendarTable.cs
- ContentType.cs
- WindowsListViewGroupHelper.cs
- RSAProtectedConfigurationProvider.cs
- SpotLight.cs
- XmlSchemaExporter.cs
- _emptywebproxy.cs
- SizeF.cs
- PointLight.cs
- ProcessThreadCollection.cs
- FrameworkContextData.cs
- TypeToStringValueConverter.cs
- ReaderWriterLockWrapper.cs
- LocalizationParserHooks.cs
- FontEmbeddingManager.cs
- LayoutManager.cs
- RangeValidator.cs
- WorkflowMarkupSerializationManager.cs
- VScrollBar.cs
- XsdDateTime.cs
- ExpressionBuilder.cs
- RowBinding.cs
- Reference.cs
- ExcludeFromCodeCoverageAttribute.cs
- TraversalRequest.cs
- XmlWriter.cs
- DrawListViewColumnHeaderEventArgs.cs
- LineBreak.cs
- Color.cs
- DayRenderEvent.cs
- TraceAsyncResult.cs
- ProvideValueServiceProvider.cs
- InternalTypeHelper.cs
- ReceiveActivityDesigner.cs
- FixedHighlight.cs
- DataSourceView.cs
- ManualResetEvent.cs
- VBIdentifierName.cs
- ChildTable.cs
- InfoCardProofToken.cs
- X509Extension.cs
- EntityProxyFactory.cs
- ToolStripItem.cs