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
- Constraint.cs
- DocumentationServerProtocol.cs
- ManipulationInertiaStartingEventArgs.cs
- Validator.cs
- LocatorManager.cs
- SqlExpressionNullability.cs
- TraceSwitch.cs
- SoapFault.cs
- Literal.cs
- OdbcHandle.cs
- DesignerLoader.cs
- StoreAnnotationsMap.cs
- FontCacheUtil.cs
- OutputCacheSettingsSection.cs
- SecurityHeaderLayout.cs
- XmlResolver.cs
- BitmapEffectDrawingContextState.cs
- TextBoxView.cs
- FileSystemInfo.cs
- BindingSource.cs
- XmlILModule.cs
- DataGrid.cs
- WindowsTooltip.cs
- NameTable.cs
- Compiler.cs
- IndentTextWriter.cs
- Soap12ProtocolReflector.cs
- EncodingConverter.cs
- ClockController.cs
- InternalPolicyElement.cs
- ExpressionEditorSheet.cs
- ReferencedAssembly.cs
- PieceDirectory.cs
- MetadataArtifactLoaderXmlReaderWrapper.cs
- InputManager.cs
- CodeRegionDirective.cs
- DataGridViewCellStyle.cs
- TraceSwitch.cs
- XXXOnTypeBuilderInstantiation.cs
- ApplicationTrust.cs
- PageRanges.cs
- TokenFactoryBase.cs
- SoapAttributeAttribute.cs
- GridItemPatternIdentifiers.cs
- ArrangedElementCollection.cs
- SqlNodeTypeOperators.cs
- ComboBoxRenderer.cs
- LineSegment.cs
- SectionInput.cs
- BoundField.cs
- ClientFormsIdentity.cs
- ViewEventArgs.cs
- XmlUtilWriter.cs
- BehaviorEditorPart.cs
- UntypedNullExpression.cs
- MessageQueueCriteria.cs
- RelationshipWrapper.cs
- Vector3DCollection.cs
- DynamicDataManager.cs
- FunctionGenerator.cs
- MailMessage.cs
- ListDictionaryInternal.cs
- PreviewPageInfo.cs
- XmlJsonReader.cs
- CodePageUtils.cs
- ToolStripTextBox.cs
- VariableAction.cs
- PostBackTrigger.cs
- SafeProcessHandle.cs
- UnicodeEncoding.cs
- ActionNotSupportedException.cs
- mansign.cs
- XmlSchemaValidationException.cs
- CustomWebEventKey.cs
- Facet.cs
- StatusBarDrawItemEvent.cs
- ContentType.cs
- ResourceDescriptionAttribute.cs
- DummyDataSource.cs
- CellNormalizer.cs
- ByteStreamGeometryContext.cs
- ResXResourceSet.cs
- EnvironmentPermission.cs
- safex509handles.cs
- Transform3DGroup.cs
- DataGridRowHeaderAutomationPeer.cs
- ProgressBarRenderer.cs
- CqlParser.cs
- RequestCachingSection.cs
- ActivityExecutionFilter.cs
- CheckBox.cs
- Point4DConverter.cs
- ParamArrayAttribute.cs
- MarkupCompilePass2.cs
- PenThreadPool.cs
- MaskInputRejectedEventArgs.cs
- HashAlgorithm.cs
- Encoder.cs
- ApplicationActivator.cs
- LateBoundBitmapDecoder.cs