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
- GridItemProviderWrapper.cs
- XmlNamespaceDeclarationsAttribute.cs
- SessionStateUtil.cs
- ControlAdapter.cs
- WebPartTransformerCollection.cs
- XsltQilFactory.cs
- nulltextcontainer.cs
- StreamSecurityUpgradeProvider.cs
- TypeSource.cs
- XmlSchemaImporter.cs
- UserNamePasswordClientCredential.cs
- SqlCommandSet.cs
- HtmlInputButton.cs
- COM2AboutBoxPropertyDescriptor.cs
- DataServiceExpressionVisitor.cs
- WebPartUserCapability.cs
- XmlCharCheckingReader.cs
- QuaternionAnimationBase.cs
- ObjectViewFactory.cs
- QuaternionAnimationBase.cs
- MediaPlayerState.cs
- AssemblyCache.cs
- Vector3DValueSerializer.cs
- InvalidPrinterException.cs
- DataGridViewComboBoxCell.cs
- XmlSchemaInferenceException.cs
- _DigestClient.cs
- DataServiceQueryOfT.cs
- Section.cs
- UserControlParser.cs
- DomNameTable.cs
- EncryptedData.cs
- AdCreatedEventArgs.cs
- ISAPIWorkerRequest.cs
- WrapPanel.cs
- OleServicesContext.cs
- PropertyGrid.cs
- ClockController.cs
- HttpWebResponse.cs
- XmlElementList.cs
- TypeSystem.cs
- MessageQueueKey.cs
- SafeTokenHandle.cs
- TemplatePropertyEntry.cs
- SmtpDateTime.cs
- DeviceSpecificChoiceCollection.cs
- CommonDialog.cs
- OleDbParameter.cs
- MergeFailedEvent.cs
- ExpressionBuilderContext.cs
- WebPartConnectionCollection.cs
- UnhandledExceptionEventArgs.cs
- SrgsSubset.cs
- ExceptionUtil.cs
- WindowsListViewGroup.cs
- safelinkcollection.cs
- Label.cs
- Control.cs
- SqlException.cs
- UserMapPath.cs
- DataRowView.cs
- HotCommands.cs
- XmlnsPrefixAttribute.cs
- XPathBuilder.cs
- AnnotationHelper.cs
- EnvelopedSignatureTransform.cs
- ProxyWebPart.cs
- ScrollableControl.cs
- StorageAssociationSetMapping.cs
- PropertyRef.cs
- WebPartConnectionsDisconnectVerb.cs
- StyleTypedPropertyAttribute.cs
- PermissionRequestEvidence.cs
- SecurityNegotiationException.cs
- PointAnimationBase.cs
- XComponentModel.cs
- ConditionCollection.cs
- DnsEndPoint.cs
- PageTheme.cs
- GridViewColumn.cs
- Attributes.cs
- SchemaElementLookUpTable.cs
- Semaphore.cs
- Visual3DCollection.cs
- InputScopeNameConverter.cs
- TimeZone.cs
- CustomAttributeSerializer.cs
- ValidationResults.cs
- ManagementObjectSearcher.cs
- FunctionQuery.cs
- ChannelBinding.cs
- ExclusiveHandleList.cs
- Boolean.cs
- HostingEnvironment.cs
- IdnElement.cs
- PropertyReference.cs
- ErrorInfoXmlDocument.cs
- InkCanvas.cs
- RecommendedAsConfigurableAttribute.cs
- ObjectListItem.cs