Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / HTMLTagNameToTypeMapper.cs / 2 / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ConsoleTraceListener.cs
- BaseValidatorDesigner.cs
- MarkedHighlightComponent.cs
- ToolStripSeparator.cs
- ColorPalette.cs
- MarkupWriter.cs
- NamedPipeHostedTransportConfiguration.cs
- UnknownBitmapEncoder.cs
- Vector3DValueSerializer.cs
- SortKey.cs
- MediaContext.cs
- _AuthenticationState.cs
- WebPartEditorOkVerb.cs
- CodeRemoveEventStatement.cs
- SourceChangedEventArgs.cs
- XhtmlBasicValidatorAdapter.cs
- GregorianCalendarHelper.cs
- Classification.cs
- ForwardPositionQuery.cs
- ExternalException.cs
- WSFederationHttpBinding.cs
- UnsafeNativeMethods.cs
- GPRECTF.cs
- DataGridTableStyleMappingNameEditor.cs
- ListSortDescription.cs
- DecimalKeyFrameCollection.cs
- AttributeConverter.cs
- DbMetaDataColumnNames.cs
- WizardStepBase.cs
- WindowsListViewItem.cs
- HtmlInputRadioButton.cs
- PropertyInformation.cs
- CodeSubDirectory.cs
- ResourceReferenceExpressionConverter.cs
- SerializationInfo.cs
- EncryptedData.cs
- ProcessManager.cs
- LoadedOrUnloadedOperation.cs
- WebPartCollection.cs
- ScaleTransform.cs
- ToolStripKeyboardHandlingService.cs
- CollectionConverter.cs
- ObjectQueryProvider.cs
- TemplateControlBuildProvider.cs
- User.cs
- AnnotationResourceChangedEventArgs.cs
- EntityDataSourceQueryBuilder.cs
- FormViewInsertedEventArgs.cs
- Wrapper.cs
- HTTPNotFoundHandler.cs
- AttributedMetaModel.cs
- WebConfigManager.cs
- DocumentViewerConstants.cs
- LocalFileSettingsProvider.cs
- ExtendedPropertyDescriptor.cs
- CodeSubDirectoriesCollection.cs
- FileUtil.cs
- EnvironmentPermission.cs
- DivideByZeroException.cs
- DataGridViewTopLeftHeaderCell.cs
- WebPartCloseVerb.cs
- Util.cs
- Vector3DCollectionConverter.cs
- XmlReflectionImporter.cs
- ThreadInterruptedException.cs
- SessionStateModule.cs
- DelegateSerializationHolder.cs
- EmissiveMaterial.cs
- IdentitySection.cs
- UserInitiatedNavigationPermission.cs
- ApplicationFileParser.cs
- PaperSize.cs
- LexicalChunk.cs
- TableItemStyle.cs
- StateChangeEvent.cs
- SqlMetaData.cs
- QueueProcessor.cs
- GlyphRunDrawing.cs
- ListViewUpdateEventArgs.cs
- SchemaMapping.cs
- SelectorAutomationPeer.cs
- GeneratedCodeAttribute.cs
- WebEventTraceProvider.cs
- LogLogRecord.cs
- UniqueSet.cs
- Sql8ExpressionRewriter.cs
- invalidudtexception.cs
- TreeViewHitTestInfo.cs
- FormClosingEvent.cs
- ContentIterators.cs
- FontFamilyConverter.cs
- SmtpNetworkElement.cs
- CurrentTimeZone.cs
- ListDictionary.cs
- AttributeAction.cs
- XmlHierarchicalEnumerable.cs
- CounterSampleCalculator.cs
- ThumbAutomationPeer.cs
- CurrentChangingEventManager.cs
- Relationship.cs