Code:
/ FX-1434 / FX-1434 / 1.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
- HtmlAnchor.cs
- MultipleFilterMatchesException.cs
- RuleConditionDialog.cs
- DataIdProcessor.cs
- RequestQueryParser.cs
- KnownTypesHelper.cs
- FixedSOMTableRow.cs
- DSASignatureFormatter.cs
- OleDbWrapper.cs
- ProvidePropertyAttribute.cs
- ColumnWidthChangingEvent.cs
- Matrix3D.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- ResourceAssociationSetEnd.cs
- ReadOnlyDataSourceView.cs
- SafeCryptoHandles.cs
- Formatter.cs
- DebuggerAttributes.cs
- OleDbConnectionInternal.cs
- CodePropertyReferenceExpression.cs
- FrameworkReadOnlyPropertyMetadata.cs
- TextLine.cs
- GridProviderWrapper.cs
- ManagementBaseObject.cs
- MissingSatelliteAssemblyException.cs
- Attributes.cs
- PtsHelper.cs
- listitem.cs
- XmlDesigner.cs
- InheritanceUI.cs
- SqlCommandAsyncResult.cs
- SystemFonts.cs
- DomNameTable.cs
- XmlSerializationWriter.cs
- SafeFileMappingHandle.cs
- WaitingCursor.cs
- ReferentialConstraint.cs
- Point3DAnimation.cs
- PrintingPermissionAttribute.cs
- DeploymentSectionCache.cs
- WindowsFormsHelpers.cs
- PagePropertiesChangingEventArgs.cs
- XmlStreamNodeWriter.cs
- NumericPagerField.cs
- SimpleRecyclingCache.cs
- Win32Native.cs
- precedingsibling.cs
- _LocalDataStoreMgr.cs
- RTTypeWrapper.cs
- securitycriticaldata.cs
- basemetadatamappingvisitor.cs
- EntityDataSourceViewSchema.cs
- TaskForm.cs
- Activation.cs
- LicenseContext.cs
- XmlDataFileEditor.cs
- OpenFileDialog.cs
- ReaderOutput.cs
- XmlDocumentFragment.cs
- TableStyle.cs
- Int16Converter.cs
- GeneralTransform.cs
- Parser.cs
- LiteralLink.cs
- TagPrefixCollection.cs
- NamespaceList.cs
- AnimationClock.cs
- AdRotatorDesigner.cs
- MenuRenderer.cs
- SqlDataSourceQueryConverter.cs
- DataGridViewTopRowAccessibleObject.cs
- RsaSecurityTokenAuthenticator.cs
- FlowDocumentView.cs
- ValidationEventArgs.cs
- ThemeDirectoryCompiler.cs
- TableAdapterManagerNameHandler.cs
- XsdCachingReader.cs
- MarkupExtensionParser.cs
- MouseButton.cs
- XamlPointCollectionSerializer.cs
- NonBatchDirectoryCompiler.cs
- ScriptManager.cs
- DefaultPrintController.cs
- AdapterSwitches.cs
- ThemeDirectoryCompiler.cs
- LinqDataSourceValidationException.cs
- ProxyWebPartConnectionCollection.cs
- BridgeDataReader.cs
- ClientSettings.cs
- WebPageTraceListener.cs
- VisualCollection.cs
- DrawingVisualDrawingContext.cs
- SecurityDocument.cs
- SoapDocumentMethodAttribute.cs
- PermissionToken.cs
- WizardPanel.cs
- EventProviderTraceListener.cs
- FileStream.cs
- ObjectSelectorEditor.cs
- MailHeaderInfo.cs