Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Extensions / UI / ScriptControl.cs / 1305376 / ScriptControl.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI { using System; using System.Collections.Generic; using System.ComponentModel; using System.Diagnostics.CodeAnalysis; using System.Globalization; using System.Web; using System.Web.Resources; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.Util; public abstract class ScriptControl : WebControl, IScriptControl { private IScriptManagerInternal _scriptManager; private new IPage _page; protected ScriptControl() { } internal ScriptControl(IScriptManagerInternal scriptManager, IPage page) { _scriptManager = scriptManager; _page = page; } private IPage IPage { get { if (_page != null) { return _page; } else { Page page = Page; if (page == null) { throw new InvalidOperationException(AtlasWeb.Common_PageCannotBeNull); } return new PageWrapper(page); } } } private IScriptManagerInternal ScriptManager { get { if (_scriptManager == null) { Page page = Page; if (page == null) { throw new InvalidOperationException(AtlasWeb.Common_PageCannotBeNull); } _scriptManager = System.Web.UI.ScriptManager.GetCurrent(page); if (_scriptManager == null) { throw new InvalidOperationException(String.Format(CultureInfo.InvariantCulture, AtlasWeb.Common_ScriptManagerRequired, ID)); } } return _scriptManager; } } [SuppressMessage("Microsoft.Security", "CA2109:ReviewVisibleEventHandlers")] protected internal override void OnPreRender(EventArgs e) { base.OnPreRender(e); ScriptManager.RegisterScriptControl(this); } protected internal override void Render(HtmlTextWriter writer) { base.Render(writer); // DevDiv 97460: ScriptDescriptors only render if in server form, verify to avoid silently failing. IPage.VerifyRenderingInServerForm(this); // ScriptManager cannot be found in DesignMode, so do not attempt to register scripts. if (!DesignMode) { ScriptManager.RegisterScriptDescriptors(this); } } [SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate", Justification = "Implementation will likely return a new collection, which is too slow for a property")] protected abstract IEnumerableGetScriptDescriptors(); [SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate", Justification = "Implementation will likely return a new collection, which is too slow for a property")] protected abstract IEnumerable GetScriptReferences(); #region IScriptControl Members IEnumerable IScriptControl.GetScriptDescriptors() { return GetScriptDescriptors(); } IEnumerable IScriptControl.GetScriptReferences() { return GetScriptReferences(); } #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
- Section.cs
- EntityDataSourceSelectingEventArgs.cs
- HeaderUtility.cs
- UnmanagedMemoryStreamWrapper.cs
- InternalDuplexChannelListener.cs
- TimeoutConverter.cs
- FixedHyperLink.cs
- GrammarBuilderDictation.cs
- rsa.cs
- _DomainName.cs
- SchemaDeclBase.cs
- StrokeNodeData.cs
- TextRunCacheImp.cs
- ObjectListTitleAttribute.cs
- MethodExpression.cs
- RegexWriter.cs
- SoapAttributeAttribute.cs
- PageHandlerFactory.cs
- CharacterMetricsDictionary.cs
- ReadOnlyCollection.cs
- ExpressionLexer.cs
- PassportIdentity.cs
- XD.cs
- TranslateTransform3D.cs
- QueryStoreStatusRequest.cs
- XmlNamespaceMapping.cs
- PropertyInfoSet.cs
- ExternalCalls.cs
- TextProperties.cs
- DefaultWorkflowTransactionService.cs
- recordstatescratchpad.cs
- ItemsPresenter.cs
- TemplateManager.cs
- Baml2006KnownTypes.cs
- ObjRef.cs
- FloaterBaseParagraph.cs
- WrappedReader.cs
- DataSourceGeneratorException.cs
- safex509handles.cs
- WebServiceFault.cs
- AQNBuilder.cs
- SchemaRegistration.cs
- ProbeDuplex11AsyncResult.cs
- GlyphingCache.cs
- EventSinkHelperWriter.cs
- XamlSerializationHelper.cs
- GridViewDeleteEventArgs.cs
- BatchStream.cs
- ScrollProperties.cs
- OutputCacheEntry.cs
- DataTableExtensions.cs
- ServiceModelConfigurationSectionCollection.cs
- AttributeXamlType.cs
- TextEditor.cs
- PassportAuthentication.cs
- EditingCommands.cs
- NavigationPropertyEmitter.cs
- XmlLoader.cs
- WebPartTransformerCollection.cs
- PropertyMetadata.cs
- DataPointer.cs
- OpCellTreeNode.cs
- oledbconnectionstring.cs
- SqlNamer.cs
- GZipDecoder.cs
- DataGridViewLinkColumn.cs
- FrugalMap.cs
- EntityException.cs
- BuildProviderAppliesToAttribute.cs
- CombinedGeometry.cs
- BufferedGraphicsManager.cs
- Floater.cs
- UserValidatedEventArgs.cs
- OutKeywords.cs
- DocumentPageTextView.cs
- ListView.cs
- ReadOnlyTernaryTree.cs
- MinMaxParagraphWidth.cs
- brushes.cs
- DrawingContextWalker.cs
- ResourceAttributes.cs
- SystemInfo.cs
- GZipDecoder.cs
- Profiler.cs
- HierarchicalDataSourceConverter.cs
- NotifyIcon.cs
- ReadOnlyHierarchicalDataSourceView.cs
- EmptyReadOnlyDictionaryInternal.cs
- TemplateControl.cs
- QuadraticEase.cs
- HijriCalendar.cs
- GridViewHeaderRowPresenterAutomationPeer.cs
- BitmapVisualManager.cs
- WebServiceFault.cs
- ZipIOZip64EndOfCentralDirectoryBlock.cs
- X509Utils.cs
- BinHexEncoding.cs
- CategoryNameCollection.cs
- XmlWhitespace.cs
- ConnectionProviderAttribute.cs