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
- MetroSerializationManager.cs
- ScriptDescriptor.cs
- util.cs
- PathFigureCollection.cs
- SqlNamer.cs
- FilterQueryOptionExpression.cs
- ProfileInfo.cs
- SynchronizedReadOnlyCollection.cs
- ManipulationDevice.cs
- CodeIndexerExpression.cs
- EventListenerClientSide.cs
- SaveWorkflowAsyncResult.cs
- DataGridViewDataConnection.cs
- State.cs
- DataControlLinkButton.cs
- TypeConvertions.cs
- DynamicValueConverter.cs
- ExtenderProviderService.cs
- HttpCapabilitiesSectionHandler.cs
- DataControlCommands.cs
- DateRangeEvent.cs
- GenericTextProperties.cs
- CryptoStream.cs
- UrlAuthorizationModule.cs
- HttpGetProtocolImporter.cs
- PageTheme.cs
- PropertyChangedEventArgs.cs
- CompositionTarget.cs
- CheckableControlBaseAdapter.cs
- PerformanceCounter.cs
- TemplateXamlParser.cs
- Size3D.cs
- StreamDocument.cs
- IWorkflowDebuggerService.cs
- RegexStringValidatorAttribute.cs
- MetadataSerializer.cs
- IssuedSecurityTokenParameters.cs
- BitVector32.cs
- ToolBar.cs
- SecurityTokenValidationException.cs
- GcHandle.cs
- XmlSerializationWriter.cs
- OleDbCommandBuilder.cs
- AttachedPropertyBrowsableForChildrenAttribute.cs
- DeclarativeCatalogPart.cs
- UnionCodeGroup.cs
- ConfigurationElementCollection.cs
- ConstantProjectedSlot.cs
- TriggerBase.cs
- ReflectionServiceProvider.cs
- CopyAction.cs
- ObjectDataSourceChooseTypePanel.cs
- FreeFormPanel.cs
- VectorCollection.cs
- ItemContainerPattern.cs
- ListBox.cs
- OptimisticConcurrencyException.cs
- WindowsStatusBar.cs
- RtType.cs
- DataTrigger.cs
- MailWebEventProvider.cs
- CookielessHelper.cs
- ToolStripMenuItem.cs
- TableRowGroup.cs
- Guid.cs
- DynamicScriptObject.cs
- ConstraintCollection.cs
- FlowDocumentPageViewerAutomationPeer.cs
- TableColumn.cs
- NativeRightsManagementAPIsStructures.cs
- HtmlFormWrapper.cs
- AutomationPropertyInfo.cs
- PrimitiveCodeDomSerializer.cs
- PropertyChangedEventArgs.cs
- MonthCalendar.cs
- Panel.cs
- MultipleCopiesCollection.cs
- IsolatedStorageFilePermission.cs
- DrawingContextWalker.cs
- ColumnReorderedEventArgs.cs
- AdCreatedEventArgs.cs
- XmlEncoding.cs
- UpDownEvent.cs
- BufferModesCollection.cs
- Configuration.cs
- MenuCommandsChangedEventArgs.cs
- RegexMatchCollection.cs
- TimeStampChecker.cs
- TextParaClient.cs
- AxisAngleRotation3D.cs
- ComplexBindingPropertiesAttribute.cs
- ReflectionPermission.cs
- Msmq3PoisonHandler.cs
- GradientStopCollection.cs
- LinqDataSourceView.cs
- WorkerProcess.cs
- PersonalizationStateInfo.cs
- AdvancedBindingPropertyDescriptor.cs
- ManagementException.cs
- TableAdapterManagerMethodGenerator.cs