Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / MobileControlsSectionHelper.cs / 1305376 / MobileControlsSectionHelper.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System.Configuration; using System.Diagnostics; using System.Globalization; namespace System.Web.UI.MobileControls { [Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")] internal static class MobileControlsSectionHelper { private static void AddControlAdapters(IndividualDeviceConfig deviceConfig, DeviceElement device) { foreach (ControlElement control in device.Controls) { deviceConfig.AddControl(control.Control, control.Adapter); } } // Essentially this method does what MobileControlSectionHandler.Create() // does, but use MobileControlsSection for retrieving config data instead internal static ControlsConfig CreateControlsConfig(MobileControlsSection controlSection) { ControlsConfig config = new ControlsConfig(null); config["sessionStateHistorySize"] = controlSection.SessionStateHistorySize.ToString(CultureInfo.InvariantCulture); config["cookielessDataDictionaryType"] = controlSection.CookielessDataDictionaryType.AssemblyQualifiedName; config["allowCustomAttributes"] = controlSection.AllowCustomAttributes.ToString(CultureInfo.InvariantCulture); foreach (DeviceElement device in controlSection.Devices) { IndividualDeviceConfig deviceConfig = CreateDeviceConfig(config, device); AddControlAdapters(deviceConfig, device); if (!config.AddDeviceConfig(device.Name, deviceConfig)) { // Problem is due to a duplicated name throw new ConfigurationErrorsException( SR.GetString(SR.MobileControlsSectionHandler_DuplicatedDeviceName, device.Name)); } } // Passing null means no config file and line number info will be // shown when error happens. That is because there is no XmlNode of // the config section is available when MobileControlsSection is // used. But the error messages raised should still be good enough. config.FixupDeviceConfigInheritance(null); return config; } // Essentially this method does what MobileControlSectionHandler.CreateDeviceConfig() // does, but use MobileControlsSection for retrieving config data instead private static IndividualDeviceConfig CreateDeviceConfig(ControlsConfig config, DeviceElement device) { String nameOfDeviceToInheritFrom = device.InheritsFrom; if (nameOfDeviceToInheritFrom != null && nameOfDeviceToInheritFrom.Length == 0) { nameOfDeviceToInheritFrom = null; } IndividualDeviceConfig.DeviceQualifiesDelegate predicateDelegate = null; if (device.PredicateClass != null) { // If a predicate class is specified, so must a method. // The checking is already done in MobileControlsSection Debug.Assert(!String.IsNullOrEmpty(device.PredicateMethod)); predicateDelegate = device.GetDelegate(); } return new IndividualDeviceConfig(config, device.Name, predicateDelegate, device.PageAdapter, nameOfDeviceToInheritFrom); } } } // 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
- ResolveNameEventArgs.cs
- HideDisabledControlAdapter.cs
- Timer.cs
- SingleResultAttribute.cs
- ThreadSafeList.cs
- WizardStepBase.cs
- Color.cs
- TransportOutputChannel.cs
- RawStylusInputReport.cs
- TextParagraphCache.cs
- DbDataAdapter.cs
- AdRotator.cs
- altserialization.cs
- DataGridToolTip.cs
- EditorZoneBase.cs
- Expression.cs
- AlgoModule.cs
- ListControl.cs
- HebrewNumber.cs
- DataColumn.cs
- LinqDataSourceUpdateEventArgs.cs
- TreeView.cs
- ScriptControlDescriptor.cs
- Inflater.cs
- DiscoveryRequestHandler.cs
- FileChangesMonitor.cs
- ScriptServiceAttribute.cs
- TraceUtility.cs
- XPathArrayIterator.cs
- XmlNodeReader.cs
- WebRequestModuleElementCollection.cs
- JoinElimination.cs
- SoapInteropTypes.cs
- FileCodeGroup.cs
- InfiniteIntConverter.cs
- ToolStripDropDownItem.cs
- XamlReaderConstants.cs
- EntityDesignerUtils.cs
- Material.cs
- SystemColors.cs
- DisplayInformation.cs
- Attributes.cs
- SqlServer2KCompatibilityAnnotation.cs
- RestHandlerFactory.cs
- CalendarDataBindingHandler.cs
- PreservationFileReader.cs
- ChtmlImageAdapter.cs
- DynamicMethod.cs
- WindowsStatusBar.cs
- DbConnectionFactory.cs
- ObjectListGeneralPage.cs
- CodeDOMUtility.cs
- ConstructorNeedsTagAttribute.cs
- BaseCollection.cs
- DefaultParameterValueAttribute.cs
- NumberSubstitution.cs
- UnsafeNativeMethodsMilCoreApi.cs
- GraphicsContext.cs
- OracleString.cs
- FormatterServices.cs
- DocumentReference.cs
- SizeConverter.cs
- util.cs
- PrivilegeNotHeldException.cs
- PartialCachingAttribute.cs
- XmlAttributeOverrides.cs
- AutomationPeer.cs
- OrderByLifter.cs
- RoleBoolean.cs
- MenuEventArgs.cs
- ConnectionsZoneAutoFormat.cs
- ResourceContainer.cs
- InlineCollection.cs
- XslAst.cs
- MimeMultiPart.cs
- SiteMapNodeCollection.cs
- XmlNamespaceManager.cs
- WebControlAdapter.cs
- FormParameter.cs
- XmlValueConverter.cs
- PolicyUnit.cs
- SymbolType.cs
- SnapshotChangeTrackingStrategy.cs
- ToolStripContainer.cs
- XmlSchema.cs
- SecurityDescriptor.cs
- Timer.cs
- SymmetricKey.cs
- FormsAuthenticationModule.cs
- VectorCollectionConverter.cs
- CodeCastExpression.cs
- FormCollection.cs
- Attributes.cs
- ServiceNameElement.cs
- DescriptionAttribute.cs
- SetterBaseCollection.cs
- AssemblyName.cs
- CounterSampleCalculator.cs
- DocumentPage.cs
- RequestNavigateEventArgs.cs