Code:
/ DotNET / DotNET / 8.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / HTMLTagNameToTypeMapper.cs / 3 / 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; } } }
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ScriptingScriptResourceHandlerSection.cs
- CodeGroup.cs
- ObjectDesignerDataSourceView.cs
- EditBehavior.cs
- ControlCollection.cs
- RectAnimation.cs
- BindingsCollection.cs
- WasAdminWrapper.cs
- Subtree.cs
- XmlNode.cs
- DescriptionAttribute.cs
- RegexCharClass.cs
- WindowsIdentity.cs
- XPathSelfQuery.cs
- HtmlForm.cs
- StorageBasedPackageProperties.cs
- ColorPalette.cs
- HtmlValidatorAdapter.cs
- UpdateExpressionVisitor.cs
- FileDialog_Vista_Interop.cs
- UserInitiatedNavigationPermission.cs
- PackageProperties.cs
- DocumentXmlWriter.cs
- EncryptedKey.cs
- PersonalizationProvider.cs
- Light.cs
- XmlNamespaceManager.cs
- XmlSchemaComplexContent.cs
- _FtpDataStream.cs
- SamlDelegatingWriter.cs
- TabItemAutomationPeer.cs
- DetailsViewPagerRow.cs
- XmlSerializerOperationGenerator.cs
- XmlStringTable.cs
- SystemIPv6InterfaceProperties.cs
- GeneralTransform2DTo3D.cs
- TcpTransportSecurityElement.cs
- RelatedCurrencyManager.cs
- TextRangeProviderWrapper.cs
- GenerateHelper.cs
- ClearCollection.cs
- Timeline.cs
- SinglePageViewer.cs
- NoPersistScope.cs
- handlecollector.cs
- FormConverter.cs
- AttachedPropertyBrowsableAttribute.cs
- WindowInteropHelper.cs
- DelimitedListTraceListener.cs
- serverconfig.cs
- TcpWorkerProcess.cs
- SmiRecordBuffer.cs
- ImpersonationContext.cs
- InputLangChangeEvent.cs
- SystemNetHelpers.cs
- DocobjHost.cs
- CqlErrorHelper.cs
- ConfigXmlElement.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- DataGridCommandEventArgs.cs
- TextSelection.cs
- ImageMap.cs
- Lazy.cs
- ChtmlTextWriter.cs
- WindowsTitleBar.cs
- SystemWebSectionGroup.cs
- Overlapped.cs
- TabletCollection.cs
- ThreadNeutralSemaphore.cs
- PartialTrustVisibleAssemblyCollection.cs
- CompositeScriptReferenceEventArgs.cs
- ServicePoint.cs
- PrincipalPermission.cs
- IPEndPoint.cs
- _UriTypeConverter.cs
- ExpressionBuilder.cs
- EntityCommandCompilationException.cs
- EntityTypeEmitter.cs
- ReachFixedPageSerializer.cs
- PageClientProxyGenerator.cs
- FontSizeConverter.cs
- SchemaNames.cs
- PageRanges.cs
- XmlElementList.cs
- LogArchiveSnapshot.cs
- _NetworkingPerfCounters.cs
- MenuBindingsEditor.cs
- SharedUtils.cs
- LinqDataSourceUpdateEventArgs.cs
- RotateTransform3D.cs
- ModelEditingScope.cs
- ConfigXmlAttribute.cs
- CharConverter.cs
- UnsafeNativeMethods.cs
- CompositeCollection.cs
- WorkflowExecutor.cs
- Buffer.cs
- ApplicationFileCodeDomTreeGenerator.cs
- WebPartRestoreVerb.cs
- GridSplitter.cs