Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / RootBuilder.cs / 1305376 / 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; ////// /// 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; } } ///[To be supplied.] ////// The method gets called when the CodeDom tree is fully built. The way it is used is by first overriding /// ProcessGeneratedCode to keep track of the CodeCompileUnit, and to then have the ability to modify /// the CodeCompileUnit in this method /// protected internal virtual void OnCodeGenerationComplete() { } internal void SetTypeMapper(MainTagNameToTypeMapper typeMapper) { _typeMapper = typeMapper; } ////// 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.[To be supplied.] ///
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ImageButton.cs
- CounterSampleCalculator.cs
- ReflectionTypeLoadException.cs
- WebBrowserContainer.cs
- EventItfInfo.cs
- MailBnfHelper.cs
- Help.cs
- GridItem.cs
- CheckableControlBaseAdapter.cs
- storepermissionattribute.cs
- SchemaElementDecl.cs
- WindowsBrush.cs
- SyndicationDeserializer.cs
- CharStorage.cs
- AutoCompleteStringCollection.cs
- Tile.cs
- MetadataUtil.cs
- DataGridViewColumnDesigner.cs
- DataGridViewTextBoxCell.cs
- BaseTemplateParser.cs
- UrlMappingCollection.cs
- RijndaelManagedTransform.cs
- BaseParser.cs
- Add.cs
- ComponentRenameEvent.cs
- SimpleBitVector32.cs
- MetaForeignKeyColumn.cs
- AdPostCacheSubstitution.cs
- TraceHandler.cs
- MimeTextImporter.cs
- diagnosticsswitches.cs
- FeatureSupport.cs
- SettingsAttributeDictionary.cs
- PolicyException.cs
- GC.cs
- DesignerCategoryAttribute.cs
- ConnectivityStatus.cs
- String.cs
- XmlSignatureProperties.cs
- XsltSettings.cs
- LocalBuilder.cs
- DbgCompiler.cs
- BitmapDecoder.cs
- MatrixTransform.cs
- DataSourceSelectArguments.cs
- ChannelBuilder.cs
- ActivityCodeDomSerializer.cs
- ButtonField.cs
- ImpersonationContext.cs
- LogPolicy.cs
- AppDomainProtocolHandler.cs
- TagElement.cs
- NavigatorOutput.cs
- QueryOutputWriter.cs
- SHA1Managed.cs
- TemplatePartAttribute.cs
- ExpressionBindings.cs
- AsyncCallback.cs
- QilTypeChecker.cs
- TranslateTransform.cs
- ListItemConverter.cs
- SqlStream.cs
- COSERVERINFO.cs
- securitycriticaldata.cs
- PipelineModuleStepContainer.cs
- LinkedResource.cs
- ButtonAutomationPeer.cs
- XPathAxisIterator.cs
- CommunicationObjectAbortedException.cs
- StateFinalizationActivity.cs
- OdbcConnectionHandle.cs
- DbConnectionPoolIdentity.cs
- InvalidPropValue.cs
- RawTextInputReport.cs
- FontFamily.cs
- LifetimeServices.cs
- sqlcontext.cs
- CqlLexer.cs
- MimePart.cs
- CompilationRelaxations.cs
- StylusPlugInCollection.cs
- BufferModeSettings.cs
- IISUnsafeMethods.cs
- TypeConverterAttribute.cs
- ElementNotAvailableException.cs
- Manipulation.cs
- ping.cs
- PresentationSource.cs
- WebBrowserEvent.cs
- DATA_BLOB.cs
- SpecialFolderEnumConverter.cs
- KeyboardInputProviderAcquireFocusEventArgs.cs
- BaseDataList.cs
- SafeNativeMethodsOther.cs
- TraversalRequest.cs
- HealthMonitoringSection.cs
- HtmlForm.cs
- ErrorView.xaml.cs
- CssStyleCollection.cs
- TextEditorThreadLocalStore.cs