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
- NumericUpDownAccelerationCollection.cs
- Timeline.cs
- BamlRecordWriter.cs
- DocumentPageViewAutomationPeer.cs
- HttpCacheVaryByContentEncodings.cs
- DragDeltaEventArgs.cs
- sqlcontext.cs
- DynamicPropertyHolder.cs
- HttpListenerPrefixCollection.cs
- ReadWriteObjectLock.cs
- UnsafeNativeMethods.cs
- JapaneseLunisolarCalendar.cs
- RtfNavigator.cs
- InternalConfigRoot.cs
- VirtualizingPanel.cs
- CodePrimitiveExpression.cs
- PlainXmlSerializer.cs
- TableSectionStyle.cs
- EnumUnknown.cs
- VirtualPathUtility.cs
- MapPathBasedVirtualPathProvider.cs
- KeysConverter.cs
- DoubleConverter.cs
- SqlInternalConnection.cs
- NavigationProperty.cs
- FirewallWrapper.cs
- EventSourceCreationData.cs
- CacheOutputQuery.cs
- UMPAttributes.cs
- InputMethod.cs
- FieldToken.cs
- CreateUserWizard.cs
- ThicknessAnimationBase.cs
- ScrollChangedEventArgs.cs
- PopOutPanel.cs
- OpCellTreeNode.cs
- ButtonRenderer.cs
- PassportPrincipal.cs
- StaticContext.cs
- ProviderSettingsCollection.cs
- CodeTypeParameterCollection.cs
- Subtree.cs
- CultureTableRecord.cs
- CacheDependency.cs
- SettingsPropertyValueCollection.cs
- FtpWebRequest.cs
- GlyphInfoList.cs
- ClientUtils.cs
- HttpListener.cs
- FixedSOMImage.cs
- DynamicILGenerator.cs
- BuildProviderCollection.cs
- DataGridViewCellValueEventArgs.cs
- Helpers.cs
- TableSectionStyle.cs
- ContentTypeSettingDispatchMessageFormatter.cs
- Context.cs
- UdpDiscoveryMessageFilter.cs
- FlowDocumentReader.cs
- DataViewListener.cs
- MemoryRecordBuffer.cs
- UInt64Storage.cs
- SchemaElementDecl.cs
- MdiWindowListStrip.cs
- CheckBoxField.cs
- DataContractAttribute.cs
- LogFlushAsyncResult.cs
- ObjectSecurityT.cs
- OleDbTransaction.cs
- Types.cs
- ErrorHandlerModule.cs
- EnumerableCollectionView.cs
- DesignTable.cs
- BitmapCodecInfo.cs
- _AutoWebProxyScriptEngine.cs
- OutputCacheModule.cs
- TableStyle.cs
- ISAPIWorkerRequest.cs
- DataServicePagingProviderWrapper.cs
- TabItemAutomationPeer.cs
- Graph.cs
- Polyline.cs
- MaterialCollection.cs
- DataRelationPropertyDescriptor.cs
- CharAnimationBase.cs
- FieldCollectionEditor.cs
- WSHttpSecurity.cs
- RequestCachePolicy.cs
- ClassValidator.cs
- GridViewUpdateEventArgs.cs
- CatalogPartCollection.cs
- BulletChrome.cs
- TaiwanCalendar.cs
- ViewCellSlot.cs
- SerialReceived.cs
- Splitter.cs
- RequestBringIntoViewEventArgs.cs
- ThreadExceptionDialog.cs
- ByteKeyFrameCollection.cs
- WorkflowInstanceProvider.cs