Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / HTMLTagNameToTypeMapper.cs / 1305376 / HTMLTagNameToTypeMapper.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * Mapper of html tags to control types. * * Copyright (c) 1998 Microsoft Corporation */ namespace System.Web.UI { using System.ComponentModel; using System; using System.Collections; using System.Collections.Specialized; using System.Reflection; using System.Web.UI.HtmlControls; using System.Web.Util; using System.Globalization; internal class HtmlTagNameToTypeMapper : ITagNameToTypeMapper { static Hashtable _tagMap; static Hashtable _inputTypes; internal HtmlTagNameToTypeMapper() { } /*public*/ Type ITagNameToTypeMapper.GetControlType(string tagName, IDictionary attributeBag) { Type controlType; if (_tagMap == null) { Hashtable t = new Hashtable(10, StringComparer.OrdinalIgnoreCase); t.Add("a", typeof(HtmlAnchor)); t.Add("button", typeof(HtmlButton)); t.Add("form", typeof(HtmlForm)); t.Add("head", typeof(HtmlHead)); t.Add("img", typeof(HtmlImage)); t.Add("textarea", typeof(HtmlTextArea)); t.Add("select", typeof(HtmlSelect)); t.Add("table", typeof(HtmlTable)); t.Add("tr", typeof(HtmlTableRow)); t.Add("td", typeof(HtmlTableCell)); t.Add("th", typeof(HtmlTableCell)); _tagMap = t; } if (_inputTypes == null) { Hashtable t = new Hashtable(10, StringComparer.OrdinalIgnoreCase); t.Add("text", typeof(HtmlInputText)); t.Add("password", typeof(HtmlInputPassword)); t.Add("button", typeof(HtmlInputButton)); t.Add("submit", typeof(HtmlInputSubmit)); t.Add("reset", typeof(HtmlInputReset)); t.Add("image", typeof(HtmlInputImage)); t.Add("checkbox", typeof(HtmlInputCheckBox)); t.Add("radio", typeof(HtmlInputRadioButton)); t.Add("hidden", typeof(HtmlInputHidden)); t.Add("file", typeof(HtmlInputFile)); _inputTypes = t; } if (StringUtil.EqualsIgnoreCase("input", tagName)) { string type = (string)attributeBag["type"]; if (type == null) type = "text"; controlType = (Type)_inputTypes[type]; if (controlType == null) throw new HttpException( SR.GetString(SR.Invalid_type_for_input_tag, type)); } else { controlType = (Type)_tagMap[tagName]; if (controlType == null) controlType = typeof(HtmlGenericControl); } return controlType; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * Mapper of html tags to control types. * * Copyright (c) 1998 Microsoft Corporation */ namespace System.Web.UI { using System.ComponentModel; using System; using System.Collections; using System.Collections.Specialized; using System.Reflection; using System.Web.UI.HtmlControls; using System.Web.Util; using System.Globalization; internal class HtmlTagNameToTypeMapper : ITagNameToTypeMapper { static Hashtable _tagMap; static Hashtable _inputTypes; internal HtmlTagNameToTypeMapper() { } /*public*/ Type ITagNameToTypeMapper.GetControlType(string tagName, IDictionary attributeBag) { Type controlType; if (_tagMap == null) { Hashtable t = new Hashtable(10, StringComparer.OrdinalIgnoreCase); t.Add("a", typeof(HtmlAnchor)); t.Add("button", typeof(HtmlButton)); t.Add("form", typeof(HtmlForm)); t.Add("head", typeof(HtmlHead)); t.Add("img", typeof(HtmlImage)); t.Add("textarea", typeof(HtmlTextArea)); t.Add("select", typeof(HtmlSelect)); t.Add("table", typeof(HtmlTable)); t.Add("tr", typeof(HtmlTableRow)); t.Add("td", typeof(HtmlTableCell)); t.Add("th", typeof(HtmlTableCell)); _tagMap = t; } if (_inputTypes == null) { Hashtable t = new Hashtable(10, StringComparer.OrdinalIgnoreCase); t.Add("text", typeof(HtmlInputText)); t.Add("password", typeof(HtmlInputPassword)); t.Add("button", typeof(HtmlInputButton)); t.Add("submit", typeof(HtmlInputSubmit)); t.Add("reset", typeof(HtmlInputReset)); t.Add("image", typeof(HtmlInputImage)); t.Add("checkbox", typeof(HtmlInputCheckBox)); t.Add("radio", typeof(HtmlInputRadioButton)); t.Add("hidden", typeof(HtmlInputHidden)); t.Add("file", typeof(HtmlInputFile)); _inputTypes = t; } if (StringUtil.EqualsIgnoreCase("input", tagName)) { string type = (string)attributeBag["type"]; if (type == null) type = "text"; controlType = (Type)_inputTypes[type]; if (controlType == null) throw new HttpException( SR.GetString(SR.Invalid_type_for_input_tag, type)); } else { controlType = (Type)_tagMap[tagName]; if (controlType == null) controlType = typeof(HtmlGenericControl); } return controlType; } } } // 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
- FixUpCollection.cs
- DataRowExtensions.cs
- BitVector32.cs
- GradientSpreadMethodValidation.cs
- QilTypeChecker.cs
- FileUtil.cs
- ComboBoxRenderer.cs
- ProfilePropertyNameValidator.cs
- WindowsFormsHostPropertyMap.cs
- XPathNavigator.cs
- CorrelationInitializer.cs
- PointAnimationUsingKeyFrames.cs
- MorphHelper.cs
- OperandQuery.cs
- MediaPlayerState.cs
- WindowsScrollBar.cs
- ListView.cs
- SafeRightsManagementPubHandle.cs
- ToolZone.cs
- SqlParameterCollection.cs
- DetailsViewPagerRow.cs
- IgnoreSection.cs
- IISUnsafeMethods.cs
- FormViewCommandEventArgs.cs
- DockPatternIdentifiers.cs
- MouseGestureValueSerializer.cs
- HttpCacheParams.cs
- StorageEntityContainerMapping.cs
- OdbcConnectionFactory.cs
- XPathNavigator.cs
- RuntimeHelpers.cs
- Stacktrace.cs
- RangeValueProviderWrapper.cs
- SubstitutionList.cs
- CodeTypeReferenceExpression.cs
- SafeCryptoHandles.cs
- UnsafeNativeMethodsPenimc.cs
- RoleManagerEventArgs.cs
- UserThread.cs
- fixedPageContentExtractor.cs
- HtmlHistory.cs
- QilStrConcatenator.cs
- SqlInternalConnectionTds.cs
- WebServicesDescriptionAttribute.cs
- Clipboard.cs
- Calendar.cs
- DataExchangeServiceBinder.cs
- BulletChrome.cs
- CodeIdentifier.cs
- InvokeSchedule.cs
- DynamicPropertyHolder.cs
- PageBreakRecord.cs
- Win32.cs
- HandledEventArgs.cs
- RuntimeEnvironment.cs
- SymLanguageVendor.cs
- SetterBase.cs
- SafeNativeMethods.cs
- ParameterCollection.cs
- EDesignUtil.cs
- TextFormatter.cs
- DPCustomTypeDescriptor.cs
- ProvidePropertyAttribute.cs
- ApplicationServicesHostFactory.cs
- FreezableCollection.cs
- MenuRendererStandards.cs
- PtsHost.cs
- ConcurrentStack.cs
- GridViewRowPresenter.cs
- EastAsianLunisolarCalendar.cs
- Documentation.cs
- SystemException.cs
- BindingsCollection.cs
- Validator.cs
- Rect3D.cs
- HighlightVisual.cs
- WebReferenceOptions.cs
- SerializationUtilities.cs
- OperationFormatter.cs
- LinkLabelLinkClickedEvent.cs
- EventItfInfo.cs
- TextTrailingWordEllipsis.cs
- UserPreferenceChangingEventArgs.cs
- VectorCollectionValueSerializer.cs
- Line.cs
- XamlDebuggerXmlReader.cs
- CreateUserWizardStep.cs
- RightNameExpirationInfoPair.cs
- RequestCacheManager.cs
- LifetimeServices.cs
- PagePropertiesChangingEventArgs.cs
- WebPartDisplayMode.cs
- ProfileSettingsCollection.cs
- AxHostDesigner.cs
- DbConvert.cs
- XmlExtensionFunction.cs
- BamlTreeUpdater.cs
- SystemColors.cs
- Win32Exception.cs
- SqlMultiplexer.cs