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
- DataContractSet.cs
- ComponentResourceKey.cs
- AutoResetEvent.cs
- WindowsNonControl.cs
- TargetControlTypeCache.cs
- GroupBox.cs
- EntityDataSourceStatementEditor.cs
- SmiEventSink.cs
- ExtensionDataObject.cs
- MobileResource.cs
- HttpCachePolicyElement.cs
- TrustVersion.cs
- BitmapEffectOutputConnector.cs
- DataGridViewTopLeftHeaderCell.cs
- WeakHashtable.cs
- XPathNodePointer.cs
- TextProperties.cs
- HttpContextWrapper.cs
- Configuration.cs
- AtomMaterializer.cs
- Message.cs
- RsaKeyIdentifierClause.cs
- safemediahandle.cs
- MSHTMLHost.cs
- NumericExpr.cs
- Geometry.cs
- LightweightCodeGenerator.cs
- MemberDescriptor.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- MenuItem.cs
- SolidBrush.cs
- XmlReflectionMember.cs
- DataTableCollection.cs
- CapabilitiesAssignment.cs
- initElementDictionary.cs
- TogglePattern.cs
- DragEvent.cs
- MaskedTextProvider.cs
- HttpServerChannel.cs
- Timer.cs
- TextServicesDisplayAttribute.cs
- Buffer.cs
- PeerContact.cs
- RuntimeHelpers.cs
- GenerateTemporaryTargetAssembly.cs
- ObjectManager.cs
- ObjectSet.cs
- GetWinFXPath.cs
- Activation.cs
- TabletCollection.cs
- Utils.cs
- WebPartConnectionCollection.cs
- JournalNavigationScope.cs
- DependencyPropertyKind.cs
- LinkArea.cs
- IdentityModelDictionary.cs
- TypefaceMetricsCache.cs
- TableDetailsCollection.cs
- Stroke.cs
- AxisAngleRotation3D.cs
- Exception.cs
- ClientApiGenerator.cs
- TextCollapsingProperties.cs
- QueryOutputWriter.cs
- InstanceLockLostException.cs
- ClientBuildManagerCallback.cs
- rsa.cs
- InvocationExpression.cs
- TCPListener.cs
- WorkflowMarkupSerializer.cs
- NavigationPropertySingletonExpression.cs
- ListViewSortEventArgs.cs
- Stylesheet.cs
- TextRangeSerialization.cs
- EmbossBitmapEffect.cs
- CompoundFileStreamReference.cs
- RegexTree.cs
- MdImport.cs
- EntityDesignerDataSourceView.cs
- X509ThumbprintKeyIdentifierClause.cs
- PolyQuadraticBezierSegmentFigureLogic.cs
- DataBoundControlActionList.cs
- HttpHandlersSection.cs
- NullableFloatMinMaxAggregationOperator.cs
- CatalogZoneBase.cs
- DataSourceDescriptorCollection.cs
- XmlSchemaDocumentation.cs
- Italic.cs
- IgnoreFlushAndCloseStream.cs
- QueryTask.cs
- PathSegment.cs
- DesignTimeParseData.cs
- Win32Native.cs
- OracleTimeSpan.cs
- FixedDocumentSequencePaginator.cs
- DoubleUtil.cs
- ImageListStreamer.cs
- DefaultTypeArgumentAttribute.cs
- XmlRootAttribute.cs
- TableSectionStyle.cs