Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / RootBuilder.cs / 2 / RootBuilder.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * Implements the root builder * * Copyright (c) 1998 Microsoft Corporation */ namespace System.Web.UI { using System.Runtime.InteropServices; using System; using System.Collections; using System.IO; using System.Reflection; using System.Web; using System.Web.Util; using System.Security.Permissions; ////// /// [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class RootBuilder : TemplateBuilder { private MainTagNameToTypeMapper _typeMapper; // Contains a mapping of all objects to their associated builders private IDictionary _builtObjects; public RootBuilder() { } ///[To be supplied.] ////// public RootBuilder(TemplateParser parser) { } public IDictionary BuiltObjects { get { // Store any objects created by this control builder // so we can properly persist items if (_builtObjects == null) { _builtObjects = new Hashtable(ReferenceKeyComparer.Default); } return _builtObjects; } } internal void SetTypeMapper(MainTagNameToTypeMapper typeMapper) { _typeMapper = typeMapper; } ///[To be supplied.] ////// public override Type GetChildControlType(string tagName, IDictionary attribs) { // Is there a type to handle this control Type type = _typeMapper.GetControlType(tagName, attribs, true /*fAllowHtmlTags*/); return type; } internal override void PrepareNoCompilePageSupport() { base.PrepareNoCompilePageSupport(); // This is needed to break any connection with the TemplateParser, allowing it // to be fully collected when the parsing is complete _typeMapper = null; } private class ReferenceKeyComparer : IComparer, IEqualityComparer { internal static readonly ReferenceKeyComparer Default = new ReferenceKeyComparer(); bool IEqualityComparer.Equals(object x, object y) { return Object.ReferenceEquals(x, y); } int IEqualityComparer.GetHashCode(object obj) { return obj.GetHashCode(); } int IComparer.Compare(object x, object y) { if (Object.ReferenceEquals(x, y)) { return 0; } if (x == null) { return -1; } if (y == null) { return 1; } return 1; } } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.[To be supplied.] ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- TokenBasedSetEnumerator.cs
- DataGridViewColumnDividerDoubleClickEventArgs.cs
- PropertyPathConverter.cs
- UseLicense.cs
- TreeIterators.cs
- FacetValues.cs
- serverconfig.cs
- SQLInt32Storage.cs
- EllipseGeometry.cs
- ReadOnlyNameValueCollection.cs
- LinqDataSourceView.cs
- PropertyInformation.cs
- AndCondition.cs
- MethodBuilderInstantiation.cs
- CancelEventArgs.cs
- _AcceptOverlappedAsyncResult.cs
- RestHandlerFactory.cs
- ImageButton.cs
- ReversePositionQuery.cs
- StringToken.cs
- SerializationBinder.cs
- DocumentPaginator.cs
- _DomainName.cs
- HtmlGenericControl.cs
- RequestStatusBarUpdateEventArgs.cs
- ClassicBorderDecorator.cs
- unsafeIndexingFilterStream.cs
- XomlCompiler.cs
- Int32KeyFrameCollection.cs
- TimeSpanStorage.cs
- InternalControlCollection.cs
- SetStoryboardSpeedRatio.cs
- DataGridToolTip.cs
- OrthographicCamera.cs
- MultiPageTextView.cs
- ClientFactory.cs
- ClientBuildManagerTypeDescriptionProviderBridge.cs
- SID.cs
- Timeline.cs
- ConfigurationSection.cs
- ResourceProperty.cs
- VolatileEnlistmentState.cs
- TdsEnums.cs
- KeyInstance.cs
- ProtocolsConfigurationHandler.cs
- ManipulationPivot.cs
- DSACryptoServiceProvider.cs
- ToolStripSplitStackLayout.cs
- GeneratedCodeAttribute.cs
- SecurityDescriptor.cs
- QilPatternFactory.cs
- sqlpipe.cs
- Lease.cs
- FixedMaxHeap.cs
- XmlCDATASection.cs
- DataGridViewButtonCell.cs
- Predicate.cs
- LabelAutomationPeer.cs
- GPRECT.cs
- MimeParameterWriter.cs
- Regex.cs
- WindowsComboBox.cs
- AggregateException.cs
- CFStream.cs
- DataPointer.cs
- PersonalizationProvider.cs
- ObjectResult.cs
- DBProviderConfigurationHandler.cs
- ListViewInsertEventArgs.cs
- QilReplaceVisitor.cs
- NamespaceEmitter.cs
- DynamicMetaObjectBinder.cs
- SocketInformation.cs
- DataTrigger.cs
- SetIterators.cs
- ResourceAttributes.cs
- MdImport.cs
- SchemaTypeEmitter.cs
- TransactionFlowElement.cs
- MemberAccessException.cs
- XmlWriter.cs
- UnknownBitmapEncoder.cs
- RuleSettings.cs
- SqlInfoMessageEvent.cs
- ToolStripButton.cs
- ApplicationFileParser.cs
- _SecureChannel.cs
- ImageSourceConverter.cs
- Math.cs
- XsltLoader.cs
- TypeDescriptor.cs
- CodeDomDesignerLoader.cs
- LabelLiteral.cs
- Model3D.cs
- PassportAuthentication.cs
- SettingsAttributes.cs
- Resources.Designer.cs
- ServiceOperation.cs
- X509Certificate.cs
- ScrollBar.cs