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
- CustomErrorsSection.cs
- ThreadStaticAttribute.cs
- login.cs
- StreamWriter.cs
- AutomationIdentifier.cs
- PtsHelper.cs
- OleDbParameter.cs
- DayRenderEvent.cs
- SqlUtils.cs
- RayMeshGeometry3DHitTestResult.cs
- TextSimpleMarkerProperties.cs
- RulePatternOps.cs
- ScriptControl.cs
- LineInfo.cs
- X509ServiceCertificateAuthentication.cs
- SafeThreadHandle.cs
- StreamWriter.cs
- CustomErrorCollection.cs
- dataprotectionpermissionattribute.cs
- AdPostCacheSubstitution.cs
- TemplateField.cs
- ThrowHelper.cs
- XPathNodeHelper.cs
- TabItemWrapperAutomationPeer.cs
- RegexTree.cs
- ReturnType.cs
- DrawingServices.cs
- InputMethodStateChangeEventArgs.cs
- ToolStripLocationCancelEventArgs.cs
- ParameterRetriever.cs
- WebColorConverter.cs
- ParentQuery.cs
- DataViewManagerListItemTypeDescriptor.cs
- HTMLTagNameToTypeMapper.cs
- Accessible.cs
- GroupItemAutomationPeer.cs
- safesecurityhelperavalon.cs
- CollectionViewSource.cs
- TracingConnectionInitiator.cs
- KerberosSecurityTokenParameters.cs
- UpdatePanelTriggerCollection.cs
- DrawingAttributesDefaultValueFactory.cs
- TagPrefixAttribute.cs
- UnknownBitmapEncoder.cs
- TimerEventSubscriptionCollection.cs
- TypeConverterValueSerializer.cs
- HttpConfigurationSystem.cs
- CheckedPointers.cs
- DiffuseMaterial.cs
- WebPartMenuStyle.cs
- _SslSessionsCache.cs
- StreamSecurityUpgradeInitiatorAsyncResult.cs
- IntranetCredentialPolicy.cs
- Content.cs
- XpsFontSubsetter.cs
- GenericTextProperties.cs
- ProxyAttribute.cs
- DataGridDesigner.cs
- CodeGeneratorOptions.cs
- WorkflowEventArgs.cs
- StringConcat.cs
- EmulateRecognizeCompletedEventArgs.cs
- NextPreviousPagerField.cs
- InfoCardRSAPKCS1KeyExchangeDeformatter.cs
- SecurityKeyIdentifier.cs
- BuildProviderAppliesToAttribute.cs
- TextFindEngine.cs
- PersistenceException.cs
- TreeViewItem.cs
- linebase.cs
- Scheduler.cs
- QueueProcessor.cs
- DataGridViewMethods.cs
- PersistenceMetadataNamespace.cs
- Padding.cs
- EmptyStringExpandableObjectConverter.cs
- ObjectAssociationEndMapping.cs
- SecurityKeyType.cs
- BooleanExpr.cs
- QualifierSet.cs
- PageBreakRecord.cs
- DateTimeAutomationPeer.cs
- ProcessStartInfo.cs
- CollectionDataContractAttribute.cs
- DateTimePicker.cs
- CodeIdentifier.cs
- ReaderWriterLock.cs
- Gdiplus.cs
- CheckBoxField.cs
- WSMessageEncoding.cs
- Thumb.cs
- FontEditor.cs
- DeflateInput.cs
- GatewayIPAddressInformationCollection.cs
- ListViewDeleteEventArgs.cs
- Calendar.cs
- Point3D.cs
- SevenBitStream.cs
- CreateUserWizardStep.cs
- DocumentNUp.cs