Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / UI / WebControls / ChildTable.cs / 5 / 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
- BaseResourcesBuildProvider.cs
- AssemblyUtil.cs
- RightNameExpirationInfoPair.cs
- oledbmetadatacolumnnames.cs
- Signature.cs
- GenericAuthenticationEventArgs.cs
- Assembly.cs
- SecondaryViewProvider.cs
- QueryRewriter.cs
- ProviderUtil.cs
- ListView.cs
- DataSourceControlBuilder.cs
- SrgsItemList.cs
- SafeRightsManagementPubHandle.cs
- RepeaterItemCollection.cs
- WebPartHeaderCloseVerb.cs
- Int32CAMarshaler.cs
- UIPermission.cs
- TraceHwndHost.cs
- PageTheme.cs
- StrokeSerializer.cs
- PackageDocument.cs
- ToolStripItemRenderEventArgs.cs
- PrintingPermissionAttribute.cs
- SqlCacheDependencySection.cs
- securestring.cs
- XpsFixedDocumentSequenceReaderWriter.cs
- ItemType.cs
- Point4DConverter.cs
- FrameworkContentElement.cs
- RuntimeDelegateArgument.cs
- BaseComponentEditor.cs
- Header.cs
- Base64WriteStateInfo.cs
- DataGridViewLinkCell.cs
- webclient.cs
- AndCondition.cs
- SmtpNetworkElement.cs
- ZipArchive.cs
- WebPartRestoreVerb.cs
- RootBrowserWindow.cs
- OracleParameterBinding.cs
- VisualBasicSettingsHandler.cs
- LinqDataSourceInsertEventArgs.cs
- BitmapEffectGeneralTransform.cs
- BehaviorEditorPart.cs
- AsyncCompletedEventArgs.cs
- TreeNode.cs
- IUnknownConstantAttribute.cs
- CroppedBitmap.cs
- MetadataException.cs
- FakeModelItemImpl.cs
- SubpageParaClient.cs
- IgnoreFlushAndCloseStream.cs
- MDIClient.cs
- BadImageFormatException.cs
- SchemaTableColumn.cs
- CellTreeSimplifier.cs
- ConfigurationProperty.cs
- SamlAssertion.cs
- BamlLocalizabilityResolver.cs
- CounterSampleCalculator.cs
- DynamicEntity.cs
- CoTaskMemSafeHandle.cs
- XmlSchemaSimpleTypeList.cs
- MarginsConverter.cs
- WebBrowserDocumentCompletedEventHandler.cs
- SvcMapFile.cs
- TableCellCollection.cs
- VarRefManager.cs
- SystemGatewayIPAddressInformation.cs
- AutomationPattern.cs
- SuppressedPackageProperties.cs
- Timer.cs
- WrappedIUnknown.cs
- HandleRef.cs
- ElementUtil.cs
- QEncodedStream.cs
- RegexCaptureCollection.cs
- LoadWorkflowCommand.cs
- SystemIcmpV4Statistics.cs
- Int32Rect.cs
- Content.cs
- TextTreeUndo.cs
- RelationshipDetailsRow.cs
- ExpressionBindingCollection.cs
- BlurEffect.cs
- MsmqIntegrationAppDomainProtocolHandler.cs
- ToolStripDropDown.cs
- RoleService.cs
- ExtentKey.cs
- MobileComponentEditorPage.cs
- WorkflowControlEndpoint.cs
- WsdlInspector.cs
- RoleManagerModule.cs
- MetadataStore.cs
- CodeEntryPointMethod.cs
- DbMetaDataColumnNames.cs
- ControlTemplate.cs
- KeyInterop.cs