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
- DataGridColumnCollection.cs
- GradientPanel.cs
- StaticContext.cs
- FormViewDeletedEventArgs.cs
- AssociationEndMember.cs
- BamlBinaryReader.cs
- ObjectListDesigner.cs
- SubtreeProcessor.cs
- OLEDB_Enum.cs
- XmlSubtreeReader.cs
- CultureSpecificCharacterBufferRange.cs
- CodeExpressionStatement.cs
- _NtlmClient.cs
- KerberosSecurityTokenProvider.cs
- MiniModule.cs
- Function.cs
- ActiveXSite.cs
- SecurityCriticalDataForSet.cs
- DesignerEditorPartChrome.cs
- WsdlBuildProvider.cs
- TraceUtility.cs
- JsonDeserializer.cs
- DataViewListener.cs
- DrawingContextDrawingContextWalker.cs
- Line.cs
- CheckBoxList.cs
- BrowserCapabilitiesCompiler.cs
- RootBrowserWindowProxy.cs
- PropertyItem.cs
- GridViewRow.cs
- ValidatedControlConverter.cs
- DataObjectFieldAttribute.cs
- CodeObject.cs
- GrammarBuilder.cs
- SqlAggregateChecker.cs
- MetadataAssemblyHelper.cs
- ExceptionValidationRule.cs
- CapabilitiesAssignment.cs
- ActivityExecutorSurrogate.cs
- SessionStateUtil.cs
- ThemeDirectoryCompiler.cs
- DesignerMetadata.cs
- FieldAccessException.cs
- DataGridViewMethods.cs
- GlyphTypeface.cs
- FileNotFoundException.cs
- BitmapEffectRenderDataResource.cs
- HttpDebugHandler.cs
- SvcMapFileSerializer.cs
- DataBinding.cs
- DockEditor.cs
- Underline.cs
- InstallerTypeAttribute.cs
- CheckBoxStandardAdapter.cs
- FlowNode.cs
- EmptyEnumerator.cs
- SymmetricKeyWrap.cs
- Cursor.cs
- Context.cs
- ComAdminWrapper.cs
- SqlWebEventProvider.cs
- TreeNodeStyleCollection.cs
- _BufferOffsetSize.cs
- CheckBoxStandardAdapter.cs
- WeakReference.cs
- RuleValidation.cs
- HyperLinkStyle.cs
- _IPv6Address.cs
- FileSystemEventArgs.cs
- SocketElement.cs
- BinaryReader.cs
- Pen.cs
- DiscriminatorMap.cs
- JsonQNameDataContract.cs
- NativeWindow.cs
- ECDiffieHellman.cs
- EventHandlerList.cs
- PersistenceException.cs
- DataGridViewComboBoxColumn.cs
- RtfNavigator.cs
- Button.cs
- TextDecorations.cs
- PropertyEmitterBase.cs
- StylusLogic.cs
- DataGridCellAutomationPeer.cs
- NameObjectCollectionBase.cs
- ExecutionContext.cs
- ScriptReferenceEventArgs.cs
- UnsafeNativeMethods.cs
- PageCatalogPart.cs
- RsaSecurityTokenParameters.cs
- InstanceStore.cs
- AdjustableArrowCap.cs
- TransformerConfigurationWizardBase.cs
- WebScriptMetadataInstanceContextProvider.cs
- ISAPIApplicationHost.cs
- CodeObjectCreateExpression.cs
- XmlSchemaParticle.cs
- HyperLinkStyle.cs
- Thread.cs