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
- EntityUtil.cs
- TextRunCacheImp.cs
- HostingEnvironmentWrapper.cs
- SelectedPathEditor.cs
- RecipientInfo.cs
- HttpServerChannel.cs
- TextureBrush.cs
- MergeExecutor.cs
- DataControlCommands.cs
- HtmlLabelAdapter.cs
- LongTypeConverter.cs
- AttachmentCollection.cs
- SectionXmlInfo.cs
- PeerNameRecordCollection.cs
- ImageFormatConverter.cs
- ProfilePropertySettings.cs
- TextBoxBase.cs
- LineUtil.cs
- Setter.cs
- SqlMethodTransformer.cs
- DesignTimeVisibleAttribute.cs
- XmlException.cs
- ParseChildrenAsPropertiesAttribute.cs
- QilFunction.cs
- LineBreakRecord.cs
- OdbcStatementHandle.cs
- HttpUnhandledOperationInvoker.cs
- Utility.cs
- AsymmetricSignatureDeformatter.cs
- Point4DValueSerializer.cs
- OdbcConnectionPoolProviderInfo.cs
- DynamicValueConverter.cs
- BindingEntityInfo.cs
- DispatchWrapper.cs
- VisualStyleInformation.cs
- EncodingDataItem.cs
- DesignerOptions.cs
- TextElementAutomationPeer.cs
- PreloadedPackages.cs
- ExtendedProperty.cs
- WSMessageEncoding.cs
- Matrix3D.cs
- ToolStripItemCollection.cs
- DataTable.cs
- ReadOnlyNameValueCollection.cs
- BufferCache.cs
- SafeMILHandle.cs
- SQLInt64.cs
- TableItemPattern.cs
- XmlSerializerNamespaces.cs
- SQLGuid.cs
- TextTreeUndo.cs
- AppDomainInfo.cs
- XmlNullResolver.cs
- Converter.cs
- HttpCacheParams.cs
- _BufferOffsetSize.cs
- HMACSHA1.cs
- ContextStaticAttribute.cs
- ReversePositionQuery.cs
- TraceUtility.cs
- CalendarTable.cs
- BulletedList.cs
- ToolStripScrollButton.cs
- X509ServiceCertificateAuthenticationElement.cs
- BasePattern.cs
- UserMapPath.cs
- DateTimeFormatInfo.cs
- ContentType.cs
- XmlAttributes.cs
- HighlightComponent.cs
- jithelpers.cs
- JsonEnumDataContract.cs
- Point3DAnimationBase.cs
- CacheAxisQuery.cs
- Win32KeyboardDevice.cs
- WebPartAddingEventArgs.cs
- JsonXmlDataContract.cs
- SafeRightsManagementHandle.cs
- ServiceElementCollection.cs
- Block.cs
- RegexMatch.cs
- UnionQueryOperator.cs
- PropVariant.cs
- CodeEntryPointMethod.cs
- ProcessThreadCollection.cs
- DoubleIndependentAnimationStorage.cs
- Oid.cs
- CustomAttributeFormatException.cs
- NativeRecognizer.cs
- UndoEngine.cs
- Facet.cs
- PrinterUnitConvert.cs
- DataTransferEventArgs.cs
- TypeUnloadedException.cs
- EntityObject.cs
- AuthorizationRuleCollection.cs
- VirtualPath.cs
- TemplatePagerField.cs
- RectangleHotSpot.cs