Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / ControlAdapter.cs / 1305376 / 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. */ 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. */ 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
- SortDescription.cs
- MarkupExtensionReturnTypeAttribute.cs
- _TimerThread.cs
- UniqueConstraint.cs
- TagMapCollection.cs
- sqlpipe.cs
- RoutedEventHandlerInfo.cs
- DataQuery.cs
- LambdaCompiler.Logical.cs
- RequiredFieldValidator.cs
- DataGridViewTopRowAccessibleObject.cs
- VectorCollectionConverter.cs
- Condition.cs
- SizeLimitedCache.cs
- MasterPageCodeDomTreeGenerator.cs
- HttpFileCollection.cs
- IssuedSecurityTokenProvider.cs
- AnnouncementClient.cs
- XhtmlBasicObjectListAdapter.cs
- AssociatedControlConverter.cs
- MarshalByValueComponent.cs
- GenerateScriptTypeAttribute.cs
- Tablet.cs
- FixedDocumentPaginator.cs
- CorrelationResolver.cs
- CodeAttributeDeclaration.cs
- XmlReflectionImporter.cs
- NominalTypeEliminator.cs
- Column.cs
- DataTableExtensions.cs
- WCFBuildProvider.cs
- StackBuilderSink.cs
- DiscoveryVersion.cs
- uribuilder.cs
- PeerValidationBehavior.cs
- CodePropertyReferenceExpression.cs
- ModelTreeEnumerator.cs
- GridViewSortEventArgs.cs
- HtmlElementCollection.cs
- ManifestSignedXml.cs
- FilterableAttribute.cs
- CapabilitiesState.cs
- HyperLinkStyle.cs
- FunctionMappingTranslator.cs
- OpenFileDialog.cs
- ConversionContext.cs
- StylusButtonCollection.cs
- TimeEnumHelper.cs
- WebPartDescription.cs
- SByteStorage.cs
- XmlQueryStaticData.cs
- TextBoxRenderer.cs
- RelationshipSet.cs
- JavaScriptObjectDeserializer.cs
- ObjectKeyFrameCollection.cs
- LinqDataSource.cs
- Calendar.cs
- TypedRowGenerator.cs
- BaseParagraph.cs
- PlanCompilerUtil.cs
- _SecureChannel.cs
- RawStylusInputReport.cs
- RoleService.cs
- BrowserInteropHelper.cs
- followingquery.cs
- StackOverflowException.cs
- PermissionSetEnumerator.cs
- AssemblyUtil.cs
- SkewTransform.cs
- WebPartEditorOkVerb.cs
- XmlSchemaFacet.cs
- WorkflowInstanceExtensionManager.cs
- Slider.cs
- ServiceThrottle.cs
- RTLAwareMessageBox.cs
- DateTimeConverter.cs
- LineInfo.cs
- _Win32.cs
- Expr.cs
- ClockGroup.cs
- XmlDataSourceDesigner.cs
- DetailsViewCommandEventArgs.cs
- MouseActionValueSerializer.cs
- MouseCaptureWithinProperty.cs
- Mouse.cs
- RemotingConfiguration.cs
- EventTrigger.cs
- DecoderExceptionFallback.cs
- ExternalException.cs
- Vertex.cs
- BooleanStorage.cs
- CodeLinePragma.cs
- MenuItemBinding.cs
- Misc.cs
- HttpGetClientProtocol.cs
- _TransmitFileOverlappedAsyncResult.cs
- KeyValuePair.cs
- ReferenceEqualityComparer.cs
- SourceSwitch.cs
- IsolatedStorageFilePermission.cs