Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / xsp / System / Web / UI / HTMLTagNameToTypeMapper.cs / 1 / 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
- DependencyPropertyConverter.cs
- RegexReplacement.cs
- arc.cs
- DesignerListAdapter.cs
- CompilerCollection.cs
- XmlAnyElementAttributes.cs
- DataGridRow.cs
- LocalBuilder.cs
- AutomationIdentifierGuids.cs
- Journal.cs
- FtpWebRequest.cs
- ContextMenu.cs
- UnsignedPublishLicense.cs
- DomainConstraint.cs
- BookmarkScope.cs
- DesignerTextWriter.cs
- ToolConsole.cs
- ImageConverter.cs
- clipboard.cs
- SocketAddress.cs
- XmlnsDictionary.cs
- SqlConnectionFactory.cs
- Util.cs
- Token.cs
- WorkerRequest.cs
- AtomParser.cs
- WindowsHyperlink.cs
- SoapTypeAttribute.cs
- EditorPartCollection.cs
- EntityModelBuildProvider.cs
- UserControlDocumentDesigner.cs
- InitializationEventAttribute.cs
- Trigger.cs
- AuthenticationModuleElementCollection.cs
- XPathNodeIterator.cs
- MaterialGroup.cs
- ProfilePropertySettingsCollection.cs
- IdentityManager.cs
- IPipelineRuntime.cs
- HeaderElement.cs
- MultiSelector.cs
- PropertyMap.cs
- sortedlist.cs
- FrameworkName.cs
- SharedPersonalizationStateInfo.cs
- SubclassTypeValidatorAttribute.cs
- ImageCreator.cs
- ScrollContentPresenter.cs
- ColorDialog.cs
- SQLBoolean.cs
- InstanceKeyCompleteException.cs
- XmlSchemaImporter.cs
- CodeObjectCreateExpression.cs
- DocumentCollection.cs
- SQlBooleanStorage.cs
- FileEnumerator.cs
- CompilationSection.cs
- EditCommandColumn.cs
- DesignerRegionMouseEventArgs.cs
- SQLString.cs
- DataGridViewRow.cs
- WorkflowCompensationBehavior.cs
- AnnotationMap.cs
- CollectionChangeEventArgs.cs
- FilterException.cs
- HttpRequestWrapper.cs
- FilterableAttribute.cs
- HelpProvider.cs
- CalendarModeChangedEventArgs.cs
- InsufficientMemoryException.cs
- ItemAutomationPeer.cs
- PersonalizableTypeEntry.cs
- _FixedSizeReader.cs
- HttpRuntimeSection.cs
- UrlMappingsModule.cs
- ConstructorBuilder.cs
- SafeProcessHandle.cs
- ProfileServiceManager.cs
- dataSvcMapFileLoader.cs
- FontWeight.cs
- HtmlImage.cs
- BasicHttpMessageCredentialType.cs
- GenerateScriptTypeAttribute.cs
- ButtonAutomationPeer.cs
- Point3DValueSerializer.cs
- HttpRuntimeSection.cs
- EnvelopedSignatureTransform.cs
- DataListDesigner.cs
- InfocardExtendedInformationEntry.cs
- ToolStripLabel.cs
- CategoryEditor.cs
- ChtmlMobileTextWriter.cs
- WeakRefEnumerator.cs
- TreeNodeCollection.cs
- CommonXSendMessage.cs
- TypeTypeConverter.cs
- SecurityChannelListener.cs
- TextTreeRootTextBlock.cs
- DependencyObjectType.cs
- SmiRequestExecutor.cs