Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / WebControls / ChildTable.cs / 3 / 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. //------------------------------------------------------------------------------ //// 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- MediaEntryAttribute.cs
- Decimal.cs
- PointCollection.cs
- OracleEncoding.cs
- EventLogPermission.cs
- ImageListUtils.cs
- CodeAccessSecurityEngine.cs
- CacheModeConverter.cs
- WebPartManagerInternals.cs
- PointCollection.cs
- DataException.cs
- ExtendedPropertyDescriptor.cs
- baseaxisquery.cs
- NumericUpDownAcceleration.cs
- BuildDependencySet.cs
- GeneralTransform3DTo2D.cs
- ExpressionLexer.cs
- IfElseDesigner.xaml.cs
- _WinHttpWebProxyDataBuilder.cs
- DataControlFieldCell.cs
- TypeConverterAttribute.cs
- InternalPolicyElement.cs
- ComponentResourceManager.cs
- Brushes.cs
- SqlFunctionAttribute.cs
- HttpMethodConstraint.cs
- SystemBrushes.cs
- ServiceNotStartedException.cs
- Int16Storage.cs
- FixedSOMSemanticBox.cs
- WebResponse.cs
- SrgsRule.cs
- XmlCharType.cs
- HScrollBar.cs
- EntityDataSourceContextCreatingEventArgs.cs
- ToolboxComponentsCreatingEventArgs.cs
- SolidColorBrush.cs
- SecurityDescriptor.cs
- HttpModuleActionCollection.cs
- HandleRef.cs
- MouseDevice.cs
- RenderingEventArgs.cs
- baseaxisquery.cs
- CodePrimitiveExpression.cs
- MultiSelectRootGridEntry.cs
- SortedList.cs
- ObjectToModelValueConverter.cs
- AstTree.cs
- Subset.cs
- ToolStripItemTextRenderEventArgs.cs
- XmlNode.cs
- ObsoleteAttribute.cs
- JumpTask.cs
- PropertyStore.cs
- PagesSection.cs
- MetadataPropertyvalue.cs
- Rect.cs
- DesignTimeType.cs
- TextBoxBase.cs
- ResourceExpressionBuilder.cs
- AgileSafeNativeMemoryHandle.cs
- FileStream.cs
- StreamGeometryContext.cs
- SafeCoTaskMem.cs
- SafeNativeMethods.cs
- TextShapeableCharacters.cs
- ShutDownListener.cs
- CommonXSendMessage.cs
- ArgumentException.cs
- FixedSOMLineRanges.cs
- ImageKeyConverter.cs
- SafeNativeMethods.cs
- QueryConverter.cs
- PlaceHolder.cs
- FileLevelControlBuilderAttribute.cs
- ThicknessAnimationBase.cs
- ProfilePropertyNameValidator.cs
- ComboBoxRenderer.cs
- LinkConverter.cs
- ProtocolsConfiguration.cs
- RegexTree.cs
- SettingsBase.cs
- QueryCacheManager.cs
- Rect3D.cs
- QueueProcessor.cs
- ClockController.cs
- AutomationPatternInfo.cs
- AudioFileOut.cs
- CheckableControlBaseAdapter.cs
- UInt16Converter.cs
- FacetChecker.cs
- ProfessionalColors.cs
- AssemblyInfo.cs
- EntityDescriptor.cs
- SqlLiftWhereClauses.cs
- Pen.cs
- HostProtectionException.cs
- GlyphRunDrawing.cs
- ContentTypeSettingDispatchMessageFormatter.cs
- TableProvider.cs