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
- EntityContainerRelationshipSet.cs
- WebPartActionVerb.cs
- WebBrowserProgressChangedEventHandler.cs
- MergeLocalizationDirectives.cs
- MenuEventArgs.cs
- MenuItemBinding.cs
- WindowsStatusBar.cs
- _ServiceNameStore.cs
- Model3DCollection.cs
- RuntimeEnvironment.cs
- EventManager.cs
- HttpRawResponse.cs
- AssemblyAttributes.cs
- LogStore.cs
- Int32Rect.cs
- newinstructionaction.cs
- DefaultAsyncDataDispatcher.cs
- StylusPointProperty.cs
- login.cs
- RegionInfo.cs
- DataServiceClientException.cs
- BitConverter.cs
- StrokeFIndices.cs
- ListenerChannelContext.cs
- UnauthorizedWebPart.cs
- XPathSingletonIterator.cs
- SessionEndedEventArgs.cs
- WebConfigurationFileMap.cs
- PreservationFileWriter.cs
- DefaultExpression.cs
- Vector3dCollection.cs
- SqlClientPermission.cs
- CollectionContainer.cs
- _NegoStream.cs
- SubstitutionResponseElement.cs
- SqlDataSourceCache.cs
- TemplatedMailWebEventProvider.cs
- StateManagedCollection.cs
- DecimalConstantAttribute.cs
- DataServiceHost.cs
- XhtmlTextWriter.cs
- DesignerSerializationOptionsAttribute.cs
- LocatorManager.cs
- TextSyndicationContent.cs
- DataBoundLiteralControl.cs
- NumberSubstitution.cs
- CfgParser.cs
- ReflectionServiceProvider.cs
- GridViewItemAutomationPeer.cs
- SwitchAttribute.cs
- SynchronizingStream.cs
- EntityModelBuildProvider.cs
- EpmCustomContentDeSerializer.cs
- JoinSymbol.cs
- RuntimeResourceSet.cs
- DBSqlParserTable.cs
- ArglessEventHandlerProxy.cs
- RegexCaptureCollection.cs
- VisualTreeUtils.cs
- DataGridViewRowCancelEventArgs.cs
- UshortList2.cs
- GridViewDesigner.cs
- printdlgexmarshaler.cs
- exports.cs
- ExceptionHelpers.cs
- TableDetailsRow.cs
- NativeObjectSecurity.cs
- ToolStripDropDownDesigner.cs
- GridPattern.cs
- WebPartsPersonalizationAuthorization.cs
- RuntimeIdentifierPropertyAttribute.cs
- MetadataArtifactLoaderComposite.cs
- RegexCompilationInfo.cs
- IEnumerable.cs
- ActivityDesignerLayoutSerializers.cs
- OneToOneMappingSerializer.cs
- Polygon.cs
- LocalizationParserHooks.cs
- BamlCollectionHolder.cs
- CreateUserErrorEventArgs.cs
- EncodingDataItem.cs
- PerformanceCounter.cs
- UnknownBitmapEncoder.cs
- InstanceValue.cs
- DeclarationUpdate.cs
- PermissionSetTriple.cs
- SelectionEditingBehavior.cs
- BuilderInfo.cs
- QilReference.cs
- IISMapPath.cs
- METAHEADER.cs
- GridProviderWrapper.cs
- PackWebRequestFactory.cs
- Mappings.cs
- AudioDeviceOut.cs
- PasswordBox.cs
- XmlAnyAttributeAttribute.cs
- CheckBoxPopupAdapter.cs
- DataGridCaption.cs
- RTTrackingProfile.cs