Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / xsp / System / Web / UI / ControlAdapter.cs / 1 / ControlAdapter.cs
//How to set the _control //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Adapters { using System; using System.ComponentModel; using System.Security.Permissions; /* Defines the properties, methods, and events shared by all server control * adapters in the Web Forms page framework. */ [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public abstract class ControlAdapter { private HttpBrowserCapabilities _browser = null; internal Control _control; //control associated with this adapter [ Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), ] protected Control Control { get { return _control; } } /* Indicates the page on which the associated control resides. */ [ Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), ] protected Page Page { get { if(Control != null) return Control.Page; return null; } } [ Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), ] protected PageAdapter PageAdapter { get { if(Control != null && Control.Page != null) return Control.Page.PageAdapter; return null; } } protected HttpBrowserCapabilities Browser { get { if (_browser == null) { if (Page.RequestInternal != null) { _browser = Page.RequestInternal.Browser; } else { /* VSWhidbey 83667: In post-cache substitution, Page.Request * would not be available. Then we try to * use the more expensive way to access the current * context and get the request handle. */ HttpContext context = HttpContext.Current; if (context != null && context.Request != null) { _browser = context.Request.Browser; } } } return _browser; } } protected internal virtual void OnInit(EventArgs e) { Control.OnInit(e); } protected internal virtual void OnLoad(EventArgs e) { Control.OnLoad(e); } protected internal virtual void OnPreRender(EventArgs e) { Control.OnPreRender(e); } protected internal virtual void Render(HtmlTextWriter writer) { // if(_control != null) { _control.Render(writer); } } protected virtual void RenderChildren(HtmlTextWriter writer) { if(_control != null) { _control.RenderChildren(writer); } } protected internal virtual void OnUnload(EventArgs e) { Control.OnUnload(e); } protected internal virtual void BeginRender(HtmlTextWriter writer) { writer.BeginRender(); } protected internal virtual void CreateChildControls() { Control.CreateChildControls(); } protected internal virtual void EndRender(HtmlTextWriter writer) { writer.EndRender(); } protected internal virtual void LoadAdapterControlState(object state) { } protected internal virtual void LoadAdapterViewState(object state) { } protected internal virtual object SaveAdapterControlState() { return null; } protected internal virtual object SaveAdapterViewState() { return null; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //How to set the _control //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.Adapters { using System; using System.ComponentModel; using System.Security.Permissions; /* Defines the properties, methods, and events shared by all server control * adapters in the Web Forms page framework. */ [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public abstract class ControlAdapter { private HttpBrowserCapabilities _browser = null; internal Control _control; //control associated with this adapter [ Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), ] protected Control Control { get { return _control; } } /* Indicates the page on which the associated control resides. */ [ Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), ] protected Page Page { get { if(Control != null) return Control.Page; return null; } } [ Browsable(false), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden), ] protected PageAdapter PageAdapter { get { if(Control != null && Control.Page != null) return Control.Page.PageAdapter; return null; } } protected HttpBrowserCapabilities Browser { get { if (_browser == null) { if (Page.RequestInternal != null) { _browser = Page.RequestInternal.Browser; } else { /* VSWhidbey 83667: In post-cache substitution, Page.Request * would not be available. Then we try to * use the more expensive way to access the current * context and get the request handle. */ HttpContext context = HttpContext.Current; if (context != null && context.Request != null) { _browser = context.Request.Browser; } } } return _browser; } } protected internal virtual void OnInit(EventArgs e) { Control.OnInit(e); } protected internal virtual void OnLoad(EventArgs e) { Control.OnLoad(e); } protected internal virtual void OnPreRender(EventArgs e) { Control.OnPreRender(e); } protected internal virtual void Render(HtmlTextWriter writer) { // if(_control != null) { _control.Render(writer); } } protected virtual void RenderChildren(HtmlTextWriter writer) { if(_control != null) { _control.RenderChildren(writer); } } protected internal virtual void OnUnload(EventArgs e) { Control.OnUnload(e); } protected internal virtual void BeginRender(HtmlTextWriter writer) { writer.BeginRender(); } protected internal virtual void CreateChildControls() { Control.CreateChildControls(); } protected internal virtual void EndRender(HtmlTextWriter writer) { writer.EndRender(); } protected internal virtual void LoadAdapterControlState(object state) { } protected internal virtual void LoadAdapterViewState(object state) { } protected internal virtual object SaveAdapterControlState() { return null; } protected internal virtual object SaveAdapterViewState() { return null; } } } // 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
- RectConverter.cs
- Select.cs
- AnimationLayer.cs
- ToolbarAUtomationPeer.cs
- MbpInfo.cs
- precedingquery.cs
- GetWinFXPath.cs
- EventSinkActivityDesigner.cs
- ToolTipAutomationPeer.cs
- UnaryQueryOperator.cs
- PropertyRecord.cs
- TypeBuilder.cs
- InkPresenter.cs
- WebBrowserNavigatedEventHandler.cs
- DefaultEventAttribute.cs
- validationstate.cs
- InputGestureCollection.cs
- Error.cs
- OracleParameterCollection.cs
- XmlSchemaObjectTable.cs
- EncodedStreamFactory.cs
- InvalidCardException.cs
- RotateTransform.cs
- TargetInvocationException.cs
- HTMLTextWriter.cs
- EventSinkActivity.cs
- ZipIOBlockManager.cs
- RsaSecurityKey.cs
- SoapAttributeOverrides.cs
- COSERVERINFO.cs
- RewritingValidator.cs
- DataGridCell.cs
- WebUtil.cs
- __ConsoleStream.cs
- HttpProfileGroupBase.cs
- RegexParser.cs
- WeakEventTable.cs
- ProfileEventArgs.cs
- PartialClassGenerationTaskInternal.cs
- TableChangeProcessor.cs
- PngBitmapEncoder.cs
- CollectionBuilder.cs
- XPathDocumentBuilder.cs
- ArgumentException.cs
- basevalidator.cs
- oledbmetadatacollectionnames.cs
- ProfilePropertyNameValidator.cs
- HttpDictionary.cs
- RowBinding.cs
- GridView.cs
- Roles.cs
- MachineKeyConverter.cs
- Buffer.cs
- ButtonChrome.cs
- KeyFrames.cs
- TreeNodeStyleCollection.cs
- AsyncSerializedWorker.cs
- X509ChainPolicy.cs
- CDSCollectionETWBCLProvider.cs
- StandardOleMarshalObject.cs
- FormViewDeleteEventArgs.cs
- SettingsPropertyNotFoundException.cs
- OpenFileDialog.cs
- FlagsAttribute.cs
- AsyncPostBackTrigger.cs
- PrivilegeNotHeldException.cs
- SessionStateContainer.cs
- securitycriticaldataformultiplegetandset.cs
- LinqDataView.cs
- WmlLinkAdapter.cs
- RankException.cs
- MenuItemBinding.cs
- DataProtection.cs
- VersionValidator.cs
- StyleBamlRecordReader.cs
- HijriCalendar.cs
- Win32Exception.cs
- RectConverter.cs
- CapiSymmetricAlgorithm.cs
- HashCodeCombiner.cs
- SqlWebEventProvider.cs
- AuthStoreRoleProvider.cs
- OutputCacheProfileCollection.cs
- XmlSchemaSet.cs
- ProfileParameter.cs
- SQLBinaryStorage.cs
- DependencyPropertyHelper.cs
- SiteMap.cs
- TextServicesPropertyRanges.cs
- ItemPager.cs
- WebEventTraceProvider.cs
- PenLineJoinValidation.cs
- SqlCachedBuffer.cs
- DesignUtil.cs
- ColorConvertedBitmap.cs
- TableRowCollection.cs
- IconBitmapDecoder.cs
- PlatformNotSupportedException.cs
- UriTemplateMatch.cs
- _LazyAsyncResult.cs