Code:
/ DotNET / DotNET / 8.0 / untmp / Orcas / RTM / ndp / fx / src / xsp / System / Web / Extensions / ui / ScriptControl.cs / 1 / 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.Security.Permissions; using System.Web; using System.Web.Resources; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.Util; [ AspNetHostingPermission(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal), AspNetHostingPermission(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal), ] 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. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ZipIOExtraFieldElement.cs
- SequentialUshortCollection.cs
- JsonFaultDetail.cs
- ThicknessConverter.cs
- ProfileGroupSettings.cs
- NullToBooleanConverter.cs
- AncillaryOps.cs
- PageThemeCodeDomTreeGenerator.cs
- FirstMatchCodeGroup.cs
- ParallelRangeManager.cs
- SelectionItemProviderWrapper.cs
- COM2EnumConverter.cs
- TextDecorationCollectionConverter.cs
- DashStyles.cs
- StylusPointPropertyInfoDefaults.cs
- OutOfMemoryException.cs
- NewArrayExpression.cs
- PassportIdentity.cs
- ZoneLinkButton.cs
- tibetanshape.cs
- DisplayNameAttribute.cs
- SignatureToken.cs
- QueryExecutionOption.cs
- FormViewInsertEventArgs.cs
- PropertyEmitterBase.cs
- ObjectDisposedException.cs
- SqlCommandBuilder.cs
- WebConfigurationManager.cs
- ExtentJoinTreeNode.cs
- FormViewPagerRow.cs
- OdbcRowUpdatingEvent.cs
- WindowAutomationPeer.cs
- MimeTextImporter.cs
- DeviceContext.cs
- WebResourceAttribute.cs
- WebPartCancelEventArgs.cs
- DynamicQueryableWrapper.cs
- Hashtable.cs
- SQLMembershipProvider.cs
- VisualBrush.cs
- DynamicScriptObject.cs
- MultiPageTextView.cs
- XsdBuildProvider.cs
- XhtmlBasicValidationSummaryAdapter.cs
- CellQuery.cs
- InboundActivityHelper.cs
- SqlRowUpdatedEvent.cs
- BasicHttpSecurityElement.cs
- streamingZipPartStream.cs
- TaiwanLunisolarCalendar.cs
- BufferedConnection.cs
- DesigntimeLicenseContext.cs
- Bold.cs
- ReadOnlyMetadataCollection.cs
- ComponentTray.cs
- TypeListConverter.cs
- ProxyWebPartManagerDesigner.cs
- PersonalizationAdministration.cs
- SequentialOutput.cs
- RoleGroupCollection.cs
- CellTreeNodeVisitors.cs
- AdjustableArrowCap.cs
- BaseDataList.cs
- TextSelection.cs
- TableFieldsEditor.cs
- FieldDescriptor.cs
- SimpleLine.cs
- NameValueCollection.cs
- DllHostedComPlusServiceHost.cs
- EntityTransaction.cs
- XPathParser.cs
- SimpleHandlerBuildProvider.cs
- WorkerRequest.cs
- DispatcherEventArgs.cs
- EntitySet.cs
- PropertyFilter.cs
- ContextInformation.cs
- _AcceptOverlappedAsyncResult.cs
- MouseBinding.cs
- AutomationPropertyInfo.cs
- TextMarkerSource.cs
- safex509handles.cs
- FocusWithinProperty.cs
- ViewStateModeByIdAttribute.cs
- AbsoluteQuery.cs
- StoreConnection.cs
- SQLInt16Storage.cs
- WindowsFont.cs
- DocumentPageHost.cs
- EventManager.cs
- IriParsingElement.cs
- CreateUserErrorEventArgs.cs
- NotifyParentPropertyAttribute.cs
- DataControlFieldCollection.cs
- RowVisual.cs
- GridEntry.cs
- DataGridViewLinkColumn.cs
- UpDownBase.cs
- WebPartDisplayModeCancelEventArgs.cs
- IntSecurity.cs