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
- Utility.cs
- SemaphoreSlim.cs
- PathTooLongException.cs
- BinarySerializer.cs
- OleDbMetaDataFactory.cs
- WindowPatternIdentifiers.cs
- EncoderParameters.cs
- SystemDropShadowChrome.cs
- DefaultTextStore.cs
- InvalidCastException.cs
- ParallelTimeline.cs
- QueueProcessor.cs
- AssemblyUtil.cs
- RewritingPass.cs
- ColorTransform.cs
- ItemContainerGenerator.cs
- WindowsIdentity.cs
- SequenceDesignerAccessibleObject.cs
- CodeMemberEvent.cs
- SystemWebCachingSectionGroup.cs
- RijndaelManaged.cs
- LocatorManager.cs
- Configuration.cs
- String.cs
- ExpressionConverter.cs
- DataGridViewLinkCell.cs
- IntSecurity.cs
- ObjectReaderCompiler.cs
- ChangePassword.cs
- WebPartEditorApplyVerb.cs
- ExtensionQuery.cs
- RectAnimationUsingKeyFrames.cs
- ByteStorage.cs
- DataServiceHostFactory.cs
- MetadataImporter.cs
- DataGridColumnCollection.cs
- DragDrop.cs
- ActiveXHelper.cs
- FixedSchema.cs
- DateTimePicker.cs
- Decimal.cs
- ExpressionParser.cs
- WorkflowItemsPresenter.cs
- SelectedDatesCollection.cs
- XmlElementAttribute.cs
- WebException.cs
- StandardCommandToolStripMenuItem.cs
- XmlSchemaAll.cs
- HttpClientProtocol.cs
- ItemChangedEventArgs.cs
- DefaultPropertyAttribute.cs
- CodeMethodInvokeExpression.cs
- SpoolingTask.cs
- StorageTypeMapping.cs
- ZoneButton.cs
- RectConverter.cs
- UtilityExtension.cs
- WebPartTransformerCollection.cs
- SspiWrapper.cs
- LineInfo.cs
- IndexOutOfRangeException.cs
- ScaleTransform3D.cs
- COM2TypeInfoProcessor.cs
- ContextMarshalException.cs
- TreeBuilder.cs
- HandlerBase.cs
- XmlNodeReader.cs
- GridViewRowEventArgs.cs
- XmlElementAttribute.cs
- CellPartitioner.cs
- ReadOnlyCollection.cs
- StorageEndPropertyMapping.cs
- TableLayoutPanel.cs
- Point3DIndependentAnimationStorage.cs
- CollectionConverter.cs
- SyntaxCheck.cs
- BrowserCapabilitiesCompiler.cs
- StreamGeometry.cs
- NumericPagerField.cs
- SafeNativeMethods.cs
- FixedPageStructure.cs
- Identifier.cs
- BooleanConverter.cs
- IPEndPoint.cs
- LinkDescriptor.cs
- Button.cs
- Simplifier.cs
- BuildProviderCollection.cs
- MimeParameters.cs
- Bold.cs
- EmptyImpersonationContext.cs
- AnimationLayer.cs
- SessionStateSection.cs
- QueueAccessMode.cs
- returneventsaver.cs
- TileBrush.cs
- KeyNotFoundException.cs
- FormatConvertedBitmap.cs
- QilParameter.cs
- DynamicDataResources.Designer.cs