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
- ExpanderAutomationPeer.cs
- TreeChangeInfo.cs
- KeyValuePairs.cs
- PartialCachingAttribute.cs
- JournalEntryStack.cs
- DecoderFallbackWithFailureFlag.cs
- TransformPattern.cs
- JsonClassDataContract.cs
- SizeKeyFrameCollection.cs
- LayoutExceptionEventArgs.cs
- StateChangeEvent.cs
- TempFiles.cs
- BitmapEffectDrawingContextWalker.cs
- DependentTransaction.cs
- ExpressionContext.cs
- PartialCachingAttribute.cs
- WebPartsSection.cs
- DrawingAttributeSerializer.cs
- ContentElementAutomationPeer.cs
- StackBuilderSink.cs
- DescriptionCreator.cs
- PinProtectionHelper.cs
- ImportContext.cs
- ShapingWorkspace.cs
- SettingsPropertyValueCollection.cs
- DiscreteKeyFrames.cs
- ContourSegment.cs
- ConditionalWeakTable.cs
- EndpointNameMessageFilter.cs
- SmtpLoginAuthenticationModule.cs
- CustomAttributeFormatException.cs
- CustomLineCap.cs
- StaticExtension.cs
- PersonalizationProvider.cs
- ChannelServices.cs
- TreeNodeStyleCollection.cs
- DataGridViewCellMouseEventArgs.cs
- ObjectSet.cs
- _NestedSingleAsyncResult.cs
- CookieProtection.cs
- TextEditorParagraphs.cs
- HttpWriter.cs
- SpellCheck.cs
- EncodingTable.cs
- IApplicationTrustManager.cs
- Vector3DCollectionValueSerializer.cs
- SystemTcpConnection.cs
- PeoplePickerWrapper.cs
- FunctionQuery.cs
- FilteredAttributeCollection.cs
- CipherData.cs
- FolderBrowserDialog.cs
- HtmlInputReset.cs
- ReadOnlyCollectionBase.cs
- ValidatedControlConverter.cs
- Model3D.cs
- ConfigXmlText.cs
- XmlMemberMapping.cs
- BindUriHelper.cs
- SmiRecordBuffer.cs
- WsatExtendedInformation.cs
- CodeAttributeDeclarationCollection.cs
- XmlBinaryReaderSession.cs
- bindurihelper.cs
- ObjectDataSourceView.cs
- OracleConnectionStringBuilder.cs
- TaskHelper.cs
- TextContainerChangeEventArgs.cs
- FreezableOperations.cs
- MenuCommand.cs
- TrackingValidationObjectDictionary.cs
- PriorityBinding.cs
- Animatable.cs
- StreamGeometry.cs
- StreamSecurityUpgradeAcceptorBase.cs
- CultureTableRecord.cs
- HtmlEmptyTagControlBuilder.cs
- ServiceManager.cs
- HttpRuntime.cs
- NumericExpr.cs
- GeneralTransform3DGroup.cs
- CodeGenerator.cs
- HtmlContainerControl.cs
- LogAppendAsyncResult.cs
- PtsHelper.cs
- ApplicationServicesHostFactory.cs
- Enumerable.cs
- MoveSizeWinEventHandler.cs
- ConvertTextFrag.cs
- KeyEventArgs.cs
- GroupByQueryOperator.cs
- controlskin.cs
- DomainConstraint.cs
- IdnElement.cs
- XmlBoundElement.cs
- Matrix.cs
- CharEntityEncoderFallback.cs
- SevenBitStream.cs
- ProfileServiceManager.cs
- XmlSchemaIdentityConstraint.cs