Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / DEVDIV / depot / DevDiv / releases / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / ControlAdapter.cs / 2 / 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 { /* */ 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. // Copyright (c) Microsoft Corporation. All rights reserved. //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 { /* */ 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. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- AnnotationHelper.cs
- XsdDuration.cs
- DocumentPageHost.cs
- MsiStyleLogWriter.cs
- XmlAttributeCollection.cs
- AlgoModule.cs
- PersistenceTypeAttribute.cs
- BaseProcessor.cs
- ObjectPersistData.cs
- DiagnosticsConfiguration.cs
- EntityDataSourceContextCreatingEventArgs.cs
- ListControl.cs
- LinkUtilities.cs
- MessageBuffer.cs
- DragAssistanceManager.cs
- SplitContainer.cs
- DiagnosticEventProvider.cs
- RegexGroupCollection.cs
- PrintSchema.cs
- FileCodeGroup.cs
- StylusSystemGestureEventArgs.cs
- TableItemProviderWrapper.cs
- ConversionContext.cs
- TableStyle.cs
- BinarySerializer.cs
- UInt16.cs
- DataMemberConverter.cs
- errorpatternmatcher.cs
- PlaceHolder.cs
- FileLevelControlBuilderAttribute.cs
- SoapServerProtocol.cs
- WeakReference.cs
- TemplateContent.cs
- ByteRangeDownloader.cs
- JoinElimination.cs
- _TimerThread.cs
- FormsAuthenticationConfiguration.cs
- Misc.cs
- TypeBuilder.cs
- DynamicControlParameter.cs
- DBConnectionString.cs
- MenuTracker.cs
- JoinSymbol.cs
- ValidatorUtils.cs
- PageContentAsyncResult.cs
- CapabilitiesRule.cs
- MarkupCompiler.cs
- InlineCategoriesDocument.cs
- StyleModeStack.cs
- sitestring.cs
- DBCSCodePageEncoding.cs
- ColorConvertedBitmapExtension.cs
- ButtonChrome.cs
- DataGridViewCellMouseEventArgs.cs
- RadioButtonStandardAdapter.cs
- XPathMessageFilterElementComparer.cs
- ParameterToken.cs
- WebHttpSecurityModeHelper.cs
- SafeProcessHandle.cs
- RequestTimeoutManager.cs
- ArrayWithOffset.cs
- HybridDictionary.cs
- TargetParameterCountException.cs
- _ServiceNameStore.cs
- XPathBuilder.cs
- PropertyItem.cs
- BufferedOutputStream.cs
- BuildResult.cs
- BamlWriter.cs
- MenuItemCollection.cs
- WebPermission.cs
- RemoveStoryboard.cs
- TemplateBaseAction.cs
- CroppedBitmap.cs
- TextFormatter.cs
- XmlHierarchyData.cs
- EDesignUtil.cs
- FixedFlowMap.cs
- PointCollection.cs
- TableTextElementCollectionInternal.cs
- ChtmlPhoneCallAdapter.cs
- DataSourceXmlAttributeAttribute.cs
- SmiEventSink_Default.cs
- Size3DValueSerializer.cs
- StorageTypeMapping.cs
- PersonalizablePropertyEntry.cs
- EventRoute.cs
- UInt32Converter.cs
- InputGestureCollection.cs
- RequestTimeoutManager.cs
- CodeTypeParameterCollection.cs
- SingleKeyFrameCollection.cs
- Transform3DCollection.cs
- CodeTypeConstructor.cs
- CLSCompliantAttribute.cs
- MemberCollection.cs
- ScriptResourceAttribute.cs
- WindowsGraphics.cs
- SessionIDManager.cs
- RegexCaptureCollection.cs