Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- RequestSecurityTokenForRemoteTokenFactory.cs
- SharedUtils.cs
- Pair.cs
- PublisherMembershipCondition.cs
- OneWayElement.cs
- Peer.cs
- ConfigurationElementCollection.cs
- LayoutDump.cs
- _HelperAsyncResults.cs
- _AuthenticationState.cs
- MatrixTransform3D.cs
- CompositeCollection.cs
- StringUtil.cs
- SwitchElementsCollection.cs
- HttpTransportElement.cs
- ThicknessAnimationUsingKeyFrames.cs
- NumberFormatInfo.cs
- XmlAnyAttributeAttribute.cs
- Image.cs
- CommunicationObject.cs
- SnapshotChangeTrackingStrategy.cs
- MainMenu.cs
- EntitySet.cs
- UIntPtr.cs
- AssemblyAttributes.cs
- HttpListenerContext.cs
- UnicodeEncoding.cs
- ProcessStartInfo.cs
- HttpRuntimeSection.cs
- TextSelectionProcessor.cs
- SecureConversationSecurityTokenParameters.cs
- LocationReference.cs
- QueryContinueDragEventArgs.cs
- PropertyContainer.cs
- WindowsFormsDesignerOptionService.cs
- XmlAttributeProperties.cs
- WorkflowElementDialog.cs
- BodyGlyph.cs
- FormsIdentity.cs
- XmlDigitalSignatureProcessor.cs
- ItemChangedEventArgs.cs
- RTTrackingProfile.cs
- HttpRuntimeSection.cs
- xsdvalidator.cs
- AstTree.cs
- SeekStoryboard.cs
- OleDbInfoMessageEvent.cs
- StandardOleMarshalObject.cs
- ValidatedControlConverter.cs
- HttpDigestClientElement.cs
- RequestQueue.cs
- DependencyPropertyDescriptor.cs
- DirectionalLight.cs
- TypeSystem.cs
- SchemaSetCompiler.cs
- OLEDB_Enum.cs
- OracleString.cs
- ICspAsymmetricAlgorithm.cs
- EntityTypeEmitter.cs
- ServiceDesigner.cs
- PersonalizationStateInfo.cs
- CombinedGeometry.cs
- ThumbButtonInfo.cs
- ProxyFragment.cs
- DataSet.cs
- DataBoundControl.cs
- DeclaredTypeElementCollection.cs
- TextRunTypographyProperties.cs
- XPathPatternBuilder.cs
- PriorityRange.cs
- XmlSchemaComplexType.cs
- SqlUdtInfo.cs
- PropertyConverter.cs
- BeginStoryboard.cs
- SamlAudienceRestrictionCondition.cs
- HostedBindingBehavior.cs
- CookieParameter.cs
- QuerySafeNavigator.cs
- initElementDictionary.cs
- RoleManagerEventArgs.cs
- DispatcherTimer.cs
- ListBoxItemWrapperAutomationPeer.cs
- DataGridViewComboBoxEditingControl.cs
- COM2PictureConverter.cs
- DocumentReferenceCollection.cs
- HtmlTable.cs
- IDispatchConstantAttribute.cs
- CompositeDispatchFormatter.cs
- CursorInteropHelper.cs
- LayeredChannelListener.cs
- DesignParameter.cs
- HuffModule.cs
- WebEventCodes.cs
- Ipv6Element.cs
- RectangleHotSpot.cs
- RequestQueue.cs
- HWStack.cs
- LazyTextWriterCreator.cs
- DesignerSerializationVisibilityAttribute.cs
- CodeTypeReference.cs