Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / ndp / fx / src / xsp / System / Web / Extensions / ui / ScriptManagerProxy.cs / 4 / ScriptManagerProxy.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI { extern alias abstractions; using System; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Drawing; using System.Drawing.Design; using System.Globalization; using System.Security.Permissions; using System.Web; using System.Web.UI; using System.Web.Resources; using System.Web.Util; [ AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal), AspNetHostingPermission(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal), DefaultProperty("Scripts"), Designer("System.Web.UI.Design.ScriptManagerProxyDesigner, " + AssemblyRef.SystemWebExtensionsDesign), NonVisualControl(), ParseChildren(true), PersistChildren(false), ToolboxBitmap(typeof(EmbeddedResourceFinder), "System.Web.Resources.ScriptManagerProxy.bmp"), ToolboxItemFilterAttribute(AssemblyRef.SystemWebExtensions, ToolboxItemFilterType.Require), ] public class ScriptManagerProxy : Control, IControl { private IScriptManagerInternal _scriptManager; private CompositeScriptReference _compositeScript; private ScriptReferenceCollection _scripts; private ServiceReferenceCollection _services; private ProfileServiceManager _profileServiceManager; private AuthenticationServiceManager _authenticationServiceManager; private RoleServiceManager _roleServiceManager; private static readonly object _navigateEvent = new object(); public ScriptManagerProxy() { } internal ScriptManagerProxy(IScriptManagerInternal scriptManager) { _scriptManager = scriptManager; } [ ResourceDescription("ScriptManager_AuthenticationService"), Category("Behavior"), DefaultValue(null), DesignerSerializationVisibility(DesignerSerializationVisibility.Content), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public AuthenticationServiceManager AuthenticationService { get { if(_authenticationServiceManager == null) { _authenticationServiceManager = new AuthenticationServiceManager(); } return _authenticationServiceManager; } } [ ResourceDescription("ScriptManager_CompositeScript"), Category("Behavior"), DefaultValue(null), DesignerSerializationVisibility(DesignerSerializationVisibility.Content), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public CompositeScriptReference CompositeScript { get { if (_compositeScript == null) { _compositeScript = new CompositeScriptReference(); } return _compositeScript; } } internal bool HasProfileServiceManager { get { return this._profileServiceManager != null; } } internal bool HasAuthenticationServiceManager { get { return this._authenticationServiceManager != null; } } internal bool HasRoleServiceManager { get { return this._roleServiceManager != null; } } internal EventHandlerNavigateEvent { get { return (EventHandler )Events[_navigateEvent]; } } [ ResourceDescription("ScriptManager_ProfileService"), Category("Behavior"), DefaultValue(null), DesignerSerializationVisibility(DesignerSerializationVisibility.Content), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public ProfileServiceManager ProfileService { get { if(_profileServiceManager == null) { _profileServiceManager = new ProfileServiceManager(); } return _profileServiceManager; } } [ ResourceDescription("ScriptManager_RoleService"), Category("Behavior"), DefaultValue(null), DesignerSerializationVisibility(DesignerSerializationVisibility.Content), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public RoleServiceManager RoleService { get { if(_roleServiceManager == null) { _roleServiceManager = new RoleServiceManager(); } return _roleServiceManager; } } private IScriptManagerInternal ScriptManager { get { if (_scriptManager == null) { Page page = Page; if (page == null) { throw new InvalidOperationException(AtlasWeb.Common_PageCannotBeNull); } _scriptManager = UI.ScriptManager.GetCurrent(Page); if (_scriptManager == null) { throw new InvalidOperationException(String.Format(CultureInfo.InvariantCulture, AtlasWeb.Common_ScriptManagerRequired, ID)); } } return _scriptManager; } } [ ResourceDescription("ScriptManager_Scripts"), Category("Behavior"), DefaultValue(null), Editor("System.Web.UI.Design.CollectionEditorBase, " + AssemblyRef.SystemWebExtensionsDesign, typeof(UITypeEditor)), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public ScriptReferenceCollection Scripts { get { if (_scripts == null) { _scripts = new ScriptReferenceCollection(); } return _scripts; } } [ ResourceDescription("ScriptManager_Services"), Category("Behavior"), DefaultValue(null), Editor("System.Web.UI.Design.CollectionEditorBase, " + AssemblyRef.SystemWebExtensionsDesign, typeof(UITypeEditor)), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public ServiceReferenceCollection Services { get { if (_services == null) { _services = new ServiceReferenceCollection(); } return _services; } } [ Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), EditorBrowsable(EditorBrowsableState.Never) ] public override bool Visible { get { return base.Visible; } set { throw new NotImplementedException(); } } [ Category("Action"), ResourceDescription("ScriptManager_Navigate"), ] public event EventHandler Navigate { add { Events.AddHandler(_navigateEvent, value); } remove { Events.RemoveHandler(_navigateEvent, value); } } internal void CollectScripts(List scripts) { if ((_compositeScript != null) && (_compositeScript.Scripts.Count != 0)) { _compositeScript.ClientUrlResolver = this; _compositeScript.ContainingControl = this; _compositeScript.IsStaticReference = true; scripts.Add(_compositeScript); } // PERF: Use field directly to avoid creating List if not already created if (_scripts != null) { foreach (ScriptReference scriptReference in _scripts) { scriptReference.ClientUrlResolver = this; scriptReference.ContainingControl = this; scriptReference.IsStaticReference = true; scripts.Add(scriptReference); } } } [SuppressMessage("Microsoft.Security", "CA2109:ReviewVisibleEventHandlers")] protected internal override void OnInit(EventArgs e) { base.OnInit(e); if (!DesignMode) { ScriptManager.RegisterProxy(this); } } internal void RegisterServices(ScriptManager scriptManager) { // PERF: Use field directly to avoid creating List if not already created if (_services != null) { foreach (ServiceReference serviceReference in _services) { serviceReference.Register(this, Context, scriptManager, scriptManager.IsDebuggingEnabled); } } } #region IControl Members HttpContextBase IControl.Context { get { return new abstractions::System.Web.HttpContextWrapper(Context); } } bool IControl.DesignMode { get { return DesignMode; } } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI { extern alias abstractions; using System; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics; using System.Diagnostics.CodeAnalysis; using System.Drawing; using System.Drawing.Design; using System.Globalization; using System.Security.Permissions; using System.Web; using System.Web.UI; using System.Web.Resources; using System.Web.Util; [ AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal), AspNetHostingPermission(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal), DefaultProperty("Scripts"), Designer("System.Web.UI.Design.ScriptManagerProxyDesigner, " + AssemblyRef.SystemWebExtensionsDesign), NonVisualControl(), ParseChildren(true), PersistChildren(false), ToolboxBitmap(typeof(EmbeddedResourceFinder), "System.Web.Resources.ScriptManagerProxy.bmp"), ToolboxItemFilterAttribute(AssemblyRef.SystemWebExtensions, ToolboxItemFilterType.Require), ] public class ScriptManagerProxy : Control, IControl { private IScriptManagerInternal _scriptManager; private CompositeScriptReference _compositeScript; private ScriptReferenceCollection _scripts; private ServiceReferenceCollection _services; private ProfileServiceManager _profileServiceManager; private AuthenticationServiceManager _authenticationServiceManager; private RoleServiceManager _roleServiceManager; private static readonly object _navigateEvent = new object(); public ScriptManagerProxy() { } internal ScriptManagerProxy(IScriptManagerInternal scriptManager) { _scriptManager = scriptManager; } [ ResourceDescription("ScriptManager_AuthenticationService"), Category("Behavior"), DefaultValue(null), DesignerSerializationVisibility(DesignerSerializationVisibility.Content), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public AuthenticationServiceManager AuthenticationService { get { if(_authenticationServiceManager == null) { _authenticationServiceManager = new AuthenticationServiceManager(); } return _authenticationServiceManager; } } [ ResourceDescription("ScriptManager_CompositeScript"), Category("Behavior"), DefaultValue(null), DesignerSerializationVisibility(DesignerSerializationVisibility.Content), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public CompositeScriptReference CompositeScript { get { if (_compositeScript == null) { _compositeScript = new CompositeScriptReference(); } return _compositeScript; } } internal bool HasProfileServiceManager { get { return this._profileServiceManager != null; } } internal bool HasAuthenticationServiceManager { get { return this._authenticationServiceManager != null; } } internal bool HasRoleServiceManager { get { return this._roleServiceManager != null; } } internal EventHandlerNavigateEvent { get { return (EventHandler )Events[_navigateEvent]; } } [ ResourceDescription("ScriptManager_ProfileService"), Category("Behavior"), DefaultValue(null), DesignerSerializationVisibility(DesignerSerializationVisibility.Content), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public ProfileServiceManager ProfileService { get { if(_profileServiceManager == null) { _profileServiceManager = new ProfileServiceManager(); } return _profileServiceManager; } } [ ResourceDescription("ScriptManager_RoleService"), Category("Behavior"), DefaultValue(null), DesignerSerializationVisibility(DesignerSerializationVisibility.Content), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public RoleServiceManager RoleService { get { if(_roleServiceManager == null) { _roleServiceManager = new RoleServiceManager(); } return _roleServiceManager; } } private IScriptManagerInternal ScriptManager { get { if (_scriptManager == null) { Page page = Page; if (page == null) { throw new InvalidOperationException(AtlasWeb.Common_PageCannotBeNull); } _scriptManager = UI.ScriptManager.GetCurrent(Page); if (_scriptManager == null) { throw new InvalidOperationException(String.Format(CultureInfo.InvariantCulture, AtlasWeb.Common_ScriptManagerRequired, ID)); } } return _scriptManager; } } [ ResourceDescription("ScriptManager_Scripts"), Category("Behavior"), DefaultValue(null), Editor("System.Web.UI.Design.CollectionEditorBase, " + AssemblyRef.SystemWebExtensionsDesign, typeof(UITypeEditor)), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public ScriptReferenceCollection Scripts { get { if (_scripts == null) { _scripts = new ScriptReferenceCollection(); } return _scripts; } } [ ResourceDescription("ScriptManager_Services"), Category("Behavior"), DefaultValue(null), Editor("System.Web.UI.Design.CollectionEditorBase, " + AssemblyRef.SystemWebExtensionsDesign, typeof(UITypeEditor)), PersistenceMode(PersistenceMode.InnerProperty), MergableProperty(false), ] public ServiceReferenceCollection Services { get { if (_services == null) { _services = new ServiceReferenceCollection(); } return _services; } } [ Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), EditorBrowsable(EditorBrowsableState.Never) ] public override bool Visible { get { return base.Visible; } set { throw new NotImplementedException(); } } [ Category("Action"), ResourceDescription("ScriptManager_Navigate"), ] public event EventHandler Navigate { add { Events.AddHandler(_navigateEvent, value); } remove { Events.RemoveHandler(_navigateEvent, value); } } internal void CollectScripts(List scripts) { if ((_compositeScript != null) && (_compositeScript.Scripts.Count != 0)) { _compositeScript.ClientUrlResolver = this; _compositeScript.ContainingControl = this; _compositeScript.IsStaticReference = true; scripts.Add(_compositeScript); } // PERF: Use field directly to avoid creating List if not already created if (_scripts != null) { foreach (ScriptReference scriptReference in _scripts) { scriptReference.ClientUrlResolver = this; scriptReference.ContainingControl = this; scriptReference.IsStaticReference = true; scripts.Add(scriptReference); } } } [SuppressMessage("Microsoft.Security", "CA2109:ReviewVisibleEventHandlers")] protected internal override void OnInit(EventArgs e) { base.OnInit(e); if (!DesignMode) { ScriptManager.RegisterProxy(this); } } internal void RegisterServices(ScriptManager scriptManager) { // PERF: Use field directly to avoid creating List if not already created if (_services != null) { foreach (ServiceReference serviceReference in _services) { serviceReference.Register(this, Context, scriptManager, scriptManager.IsDebuggingEnabled); } } } #region IControl Members HttpContextBase IControl.Context { get { return new abstractions::System.Web.HttpContextWrapper(Context); } } bool IControl.DesignMode { get { return DesignMode; } } #endregion } } // 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
- SqlColumnizer.cs
- CharUnicodeInfo.cs
- _HeaderInfoTable.cs
- Part.cs
- TemplateBindingExpressionConverter.cs
- DefaultEventAttribute.cs
- Compilation.cs
- PropertyItem.cs
- InstanceOwner.cs
- StackSpiller.cs
- DynamicAttribute.cs
- ScrollItemPattern.cs
- Console.cs
- PipelineComponent.cs
- DataGridViewCellPaintingEventArgs.cs
- Int16Converter.cs
- AttachedPropertyMethodSelector.cs
- ClientRuntimeConfig.cs
- TailCallAnalyzer.cs
- GeneratedView.cs
- ToolStripDropDownClosedEventArgs.cs
- OutputCacheSettings.cs
- FlowDocumentView.cs
- RemoteWebConfigurationHostStream.cs
- ipaddressinformationcollection.cs
- CategoryAttribute.cs
- TextRangeEditTables.cs
- QilFunction.cs
- SQLUtility.cs
- DefaultPropertyAttribute.cs
- GridViewHeaderRowPresenter.cs
- WorkItem.cs
- SupportingTokenSecurityTokenResolver.cs
- FixedPageProcessor.cs
- ImageClickEventArgs.cs
- ViewEventArgs.cs
- BrowserCapabilitiesFactoryBase.cs
- SmtpTransport.cs
- ToolStripCodeDomSerializer.cs
- BamlRecordWriter.cs
- SoapInteropTypes.cs
- SchemaElementDecl.cs
- DataColumnCollection.cs
- Dump.cs
- XamlStream.cs
- IntPtr.cs
- ColorContextHelper.cs
- RightsManagementPermission.cs
- FixedSOMTableCell.cs
- WorkflowExecutor.cs
- TreeNodeCollection.cs
- FrameworkReadOnlyPropertyMetadata.cs
- CompositeCollection.cs
- WebBrowserSiteBase.cs
- TextParentUndoUnit.cs
- Size.cs
- NavigatingCancelEventArgs.cs
- SqlDataSourceParameterParser.cs
- HostingPreferredMapPath.cs
- Mappings.cs
- ArithmeticException.cs
- XmlDataSourceNodeDescriptor.cs
- DataGridViewColumnHeaderCell.cs
- ViewSimplifier.cs
- AspCompat.cs
- CngKeyBlobFormat.cs
- MergeLocalizationDirectives.cs
- GeometryCollection.cs
- ConfigXmlReader.cs
- StreamSecurityUpgradeAcceptorAsyncResult.cs
- _TLSstream.cs
- TreeViewHitTestInfo.cs
- StaticDataManager.cs
- GregorianCalendarHelper.cs
- RoleManagerEventArgs.cs
- TypedTableGenerator.cs
- TranslateTransform.cs
- odbcmetadatacolumnnames.cs
- DataException.cs
- CodeAttributeDeclarationCollection.cs
- FrameAutomationPeer.cs
- PasswordTextContainer.cs
- GeneralTransform3DGroup.cs
- FakeModelItemImpl.cs
- PartialArray.cs
- LinkUtilities.cs
- XmlMapping.cs
- DataGridViewRowHeaderCell.cs
- ChtmlPageAdapter.cs
- FocusWithinProperty.cs
- DataDocumentXPathNavigator.cs
- DerivedKeyCachingSecurityTokenSerializer.cs
- Main.cs
- XPathSelfQuery.cs
- RtfToXamlLexer.cs
- StrongNameMembershipCondition.cs
- EntityDataSourceWrapperCollection.cs
- ListItemCollection.cs
- ConfigXmlElement.cs
- DesignerUtility.cs