Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / UI / HTMLTagNameToTypeMapper.cs / 1 / 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. // //----------------------------------------------------------------------------- /* * 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- OperandQuery.cs
- Preprocessor.cs
- UIPropertyMetadata.cs
- NavigationProperty.cs
- HttpModuleActionCollection.cs
- TargetException.cs
- DesignTimeTemplateParser.cs
- OracleEncoding.cs
- DateTimeOffsetStorage.cs
- TypeTypeConverter.cs
- HtmlInputCheckBox.cs
- HMACSHA512.cs
- XmlDataDocument.cs
- TabControlCancelEvent.cs
- AutoResetEvent.cs
- DataObject.cs
- PermissionSet.cs
- XPathAxisIterator.cs
- InheritablePropertyChangeInfo.cs
- IsolatedStorageFile.cs
- oledbmetadatacollectionnames.cs
- DetailsViewCommandEventArgs.cs
- HtmlTable.cs
- SelectedDatesCollection.cs
- FillRuleValidation.cs
- TableLayoutSettingsTypeConverter.cs
- WebPartUserCapability.cs
- Operators.cs
- HandleDictionary.cs
- XmlObjectSerializerReadContextComplex.cs
- ToolStripMenuItemDesigner.cs
- PropertyPushdownHelper.cs
- OptionalColumn.cs
- HtmlContainerControl.cs
- OrderedHashRepartitionStream.cs
- EventToken.cs
- ComboBoxItem.cs
- OdbcDataReader.cs
- TemplateManager.cs
- MemberMaps.cs
- TextParentUndoUnit.cs
- CheckBoxFlatAdapter.cs
- EntityKeyElement.cs
- PropertyGroupDescription.cs
- XmlArrayItemAttributes.cs
- BatchServiceHost.cs
- GlobalProxySelection.cs
- IdentifierElement.cs
- KeyFrames.cs
- OpenTypeMethods.cs
- StorageInfo.cs
- DataColumnPropertyDescriptor.cs
- XmlDictionaryString.cs
- ViewLoader.cs
- DataBoundControlParameterTarget.cs
- ClientConfigurationSystem.cs
- httpserverutility.cs
- TreeView.cs
- Subset.cs
- Atom10FormatterFactory.cs
- EventItfInfo.cs
- WebSysDescriptionAttribute.cs
- DateTimeOffsetStorage.cs
- UniqueEventHelper.cs
- PriorityBindingExpression.cs
- ToolboxBitmapAttribute.cs
- CompressedStack.cs
- SemanticTag.cs
- OrderedDictionary.cs
- ExceptionRoutedEventArgs.cs
- TrustManagerPromptUI.cs
- UnsafeNativeMethods.cs
- ChtmlImageAdapter.cs
- ProcessHost.cs
- MouseButtonEventArgs.cs
- FontNameConverter.cs
- ResourcesGenerator.cs
- StatusInfoItem.cs
- DataPagerFieldCollection.cs
- ObjectViewQueryResultData.cs
- SharedStatics.cs
- X509Utils.cs
- iisPickupDirectory.cs
- DataGridViewComboBoxCell.cs
- PackageDigitalSignature.cs
- NullableIntSumAggregationOperator.cs
- UnauthorizedWebPart.cs
- GetUserPreferenceRequest.cs
- NamespaceEmitter.cs
- CriticalFileToken.cs
- DateTimeValueSerializerContext.cs
- CompilerGlobalScopeAttribute.cs
- QuadraticBezierSegment.cs
- ArrayElementGridEntry.cs
- ScrollViewerAutomationPeer.cs
- SessionChannels.cs
- DbTypeMap.cs
- SystemSounds.cs
- HttpResponse.cs
- ReceiveParametersContent.cs