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
- ConfigurationManagerInternalFactory.cs
- LayoutEditorPart.cs
- HuffModule.cs
- MemberPath.cs
- SafeCryptHandles.cs
- ObjectDataSourceStatusEventArgs.cs
- QueryResponse.cs
- DrawingContextDrawingContextWalker.cs
- Decimal.cs
- ObjectTag.cs
- PasswordBox.cs
- Signature.cs
- WindowsRichEdit.cs
- LambdaCompiler.Address.cs
- SqlSupersetValidator.cs
- AddInController.cs
- SQLDoubleStorage.cs
- validation.cs
- Thread.cs
- WebProxyScriptElement.cs
- FilterQuery.cs
- WindowsGraphics2.cs
- TimelineGroup.cs
- BitmapMetadataBlob.cs
- RbTree.cs
- AlgoModule.cs
- MemberRelationshipService.cs
- OrderedDictionaryStateHelper.cs
- TrustManagerMoreInformation.cs
- DefaultCommandConverter.cs
- CategoryValueConverter.cs
- WinEventWrap.cs
- DataGridViewCellStyleBuilderDialog.cs
- Matrix.cs
- connectionpool.cs
- ResourceExpressionBuilder.cs
- StaticExtension.cs
- ListMarkerLine.cs
- MonitoringDescriptionAttribute.cs
- TabletDevice.cs
- TextWriterTraceListener.cs
- _BaseOverlappedAsyncResult.cs
- SynchronizedKeyedCollection.cs
- RadioButtonRenderer.cs
- TextRunCacheImp.cs
- HttpRuntimeSection.cs
- HandlerFactoryCache.cs
- ListMarkerSourceInfo.cs
- Keyboard.cs
- ToolBarPanel.cs
- StringInfo.cs
- Viewport3DAutomationPeer.cs
- BindingManagerDataErrorEventArgs.cs
- ProtocolsConfigurationHandler.cs
- HyperlinkAutomationPeer.cs
- ImportException.cs
- ControlAdapter.cs
- CultureInfoConverter.cs
- tooltip.cs
- CompatibleIComparer.cs
- SerTrace.cs
- X509ClientCertificateCredentialsElement.cs
- SplashScreen.cs
- ToolStripButton.cs
- VectorCollection.cs
- WindowsFormsSectionHandler.cs
- StringArrayConverter.cs
- Exceptions.cs
- MouseActionConverter.cs
- StaticSiteMapProvider.cs
- ComponentResourceManager.cs
- DataGridViewButtonCell.cs
- DbProviderConfigurationHandler.cs
- InheritedPropertyChangedEventArgs.cs
- AnnouncementEndpointElement.cs
- ClientData.cs
- ErrorWrapper.cs
- XmlCompatibilityReader.cs
- ErrorsHelper.cs
- EntityAdapter.cs
- WebResourceAttribute.cs
- xmlsaver.cs
- oledbmetadatacolumnnames.cs
- UnsafePeerToPeerMethods.cs
- Vector3DKeyFrameCollection.cs
- AdjustableArrowCap.cs
- ChineseLunisolarCalendar.cs
- FolderBrowserDialog.cs
- RewritingSimplifier.cs
- SiteMapPathDesigner.cs
- XPathNodePointer.cs
- Trigger.cs
- TreeNodeCollection.cs
- HttpConfigurationContext.cs
- DetailsViewPagerRow.cs
- AutomationTextAttribute.cs
- DateRangeEvent.cs
- RawMouseInputReport.cs
- TraceListener.cs
- EventProviderWriter.cs