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
- Registry.cs
- ContentIterators.cs
- PathTooLongException.cs
- WeakReferenceEnumerator.cs
- ReferenceCountedObject.cs
- SystemNetHelpers.cs
- CertificateManager.cs
- DataGridViewRowPostPaintEventArgs.cs
- CompositeFontParser.cs
- InternalCache.cs
- TraceInternal.cs
- SortExpressionBuilder.cs
- InstanceKeyCompleteException.cs
- ProxyGenerationError.cs
- AssemblyName.cs
- DataContractSerializerElement.cs
- SoapExtension.cs
- RowType.cs
- Select.cs
- ContractCodeDomInfo.cs
- VariableQuery.cs
- PrimitiveXmlSerializers.cs
- Trace.cs
- ArgumentOutOfRangeException.cs
- ObjectSerializerFactory.cs
- HorizontalAlignConverter.cs
- HtmlInputReset.cs
- WindowShowOrOpenTracker.cs
- CodeMemberField.cs
- DataSourceCache.cs
- ExpressionBuilderCollection.cs
- URL.cs
- RadioButtonRenderer.cs
- RoleService.cs
- BuildProviderCollection.cs
- DeclarativeCatalogPart.cs
- ProviderConnectionPoint.cs
- ReliabilityContractAttribute.cs
- CutCopyPasteHelper.cs
- OrderedEnumerableRowCollection.cs
- BamlRecords.cs
- DeflateStream.cs
- HasActivatableWorkflowEvent.cs
- PictureBox.cs
- AnnotationHighlightLayer.cs
- FormClosingEvent.cs
- StateMachineHistory.cs
- Propagator.Evaluator.cs
- TypeContext.cs
- System.Data.OracleClient_BID.cs
- PageVisual.cs
- PaperSource.cs
- DateTimeOffset.cs
- DiagnosticsConfigurationHandler.cs
- FigureHelper.cs
- ZoomPercentageConverter.cs
- DataRowComparer.cs
- EmptyReadOnlyDictionaryInternal.cs
- ColorKeyFrameCollection.cs
- InstanceOwner.cs
- TextMarkerSource.cs
- RunClient.cs
- Size.cs
- PeerMessageDispatcher.cs
- TransportConfigurationTypeElement.cs
- BindingValueChangedEventArgs.cs
- WebMessageFormatHelper.cs
- WindowProviderWrapper.cs
- FileDataSourceCache.cs
- ModifyActivitiesPropertyDescriptor.cs
- ResXBuildProvider.cs
- Propagator.cs
- DispatchChannelSink.cs
- FrameworkReadOnlyPropertyMetadata.cs
- SoapProtocolReflector.cs
- ColumnTypeConverter.cs
- PreviousTrackingServiceAttribute.cs
- latinshape.cs
- StandardRuntimeEnumValidator.cs
- SqlCharStream.cs
- AlternateView.cs
- VersionPair.cs
- IdnMapping.cs
- Light.cs
- SqlDataSourceAdvancedOptionsForm.cs
- SecurityTokenAuthenticator.cs
- DbDataRecord.cs
- BasicHttpSecurity.cs
- OdbcReferenceCollection.cs
- BaseCodePageEncoding.cs
- UserUseLicenseDictionaryLoader.cs
- ParenthesizePropertyNameAttribute.cs
- IndentTextWriter.cs
- CharacterString.cs
- QueueProcessor.cs
- CacheHelper.cs
- ColorMap.cs
- DPTypeDescriptorContext.cs
- LocationUpdates.cs
- XmlSchemaElement.cs