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
- _NetworkingPerfCounters.cs
- RuntimeConfig.cs
- RichTextBoxContextMenu.cs
- DllNotFoundException.cs
- RightNameExpirationInfoPair.cs
- FreezableCollection.cs
- SortQueryOperator.cs
- TextTreeTextElementNode.cs
- MiniAssembly.cs
- ComponentSerializationService.cs
- DataServiceResponse.cs
- Attribute.cs
- ToolBar.cs
- LinqDataSource.cs
- Point.cs
- _KerberosClient.cs
- COM2IProvidePropertyBuilderHandler.cs
- ExpressionBuilder.cs
- ProfileEventArgs.cs
- UTF8Encoding.cs
- DocumentAutomationPeer.cs
- MobileControl.cs
- IndexedString.cs
- RefreshPropertiesAttribute.cs
- RemotingSurrogateSelector.cs
- HttpListenerTimeoutManager.cs
- TypedTableBaseExtensions.cs
- DataViewListener.cs
- AspCompat.cs
- Figure.cs
- TokenizerHelper.cs
- BooleanProjectedSlot.cs
- ApplicationServiceHelper.cs
- RequestTimeoutManager.cs
- RectangleConverter.cs
- BooleanToSelectiveScrollingOrientationConverter.cs
- LinkButton.cs
- ThemeableAttribute.cs
- MatrixTransform.cs
- AttributeCollection.cs
- FormViewCommandEventArgs.cs
- WindowsListViewScroll.cs
- XmlTextReader.cs
- NetStream.cs
- StylusTip.cs
- DataObjectAttribute.cs
- TypeDependencyAttribute.cs
- SynchronizedRandom.cs
- TraceHandlerErrorFormatter.cs
- QueryStringParameter.cs
- FileUtil.cs
- EFColumnProvider.cs
- WindowsGrip.cs
- WpfPayload.cs
- IsolatedStorageFilePermission.cs
- AccessibilityApplicationManager.cs
- TransactionInterop.cs
- AnimationClockResource.cs
- Msec.cs
- Triangle.cs
- SymDocumentType.cs
- IisTraceWebEventProvider.cs
- BindingValueChangedEventArgs.cs
- ConfigUtil.cs
- CheckBox.cs
- InfoCardSymmetricCrypto.cs
- PrimitiveType.cs
- StringWriter.cs
- DataControlFieldCollection.cs
- XmlBinaryReader.cs
- XmlnsPrefixAttribute.cs
- MaskedTextProvider.cs
- PersianCalendar.cs
- SqlDataSourceTableQuery.cs
- SoapParser.cs
- CommandDevice.cs
- WebPartVerbsEventArgs.cs
- ScriptReferenceBase.cs
- WindowsFormsDesignerOptionService.cs
- FileReader.cs
- DbResourceAllocator.cs
- SoapClientProtocol.cs
- PocoEntityKeyStrategy.cs
- ContainerParagraph.cs
- base64Transforms.cs
- ClipboardData.cs
- SerializerProvider.cs
- ColorConverter.cs
- DetailsViewInsertEventArgs.cs
- ApplicationSecurityInfo.cs
- TcpClientChannel.cs
- Keyboard.cs
- BulletedListEventArgs.cs
- CodeCommentStatement.cs
- ApplicationContext.cs
- Emitter.cs
- StreamGeometry.cs
- TimeStampChecker.cs
- backend.cs
- DataGridViewRowsAddedEventArgs.cs