Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- DBSchemaTable.cs
- Symbol.cs
- MILUtilities.cs
- BigInt.cs
- MimeTextImporter.cs
- TabControlEvent.cs
- MyContact.cs
- SqlNodeTypeOperators.cs
- webclient.cs
- FontEmbeddingManager.cs
- WindowsTreeView.cs
- FunctionDetailsReader.cs
- ThrowHelper.cs
- RewritingSimplifier.cs
- DeclaredTypeElement.cs
- SqlXmlStorage.cs
- DiscriminatorMap.cs
- cookiecollection.cs
- HttpRequest.cs
- XmlSerializerAssemblyAttribute.cs
- TypedReference.cs
- HttpValueCollection.cs
- JsonEnumDataContract.cs
- SqlUnionizer.cs
- DependencyObjectPropertyDescriptor.cs
- EntityConnectionStringBuilder.cs
- TextRangeEdit.cs
- TextContainerChangeEventArgs.cs
- TypedMessageConverter.cs
- TextDpi.cs
- ClientConfigPaths.cs
- AspNetSynchronizationContext.cs
- InputProcessorProfilesLoader.cs
- TypedMessageConverter.cs
- TimeStampChecker.cs
- MetadataCacheItem.cs
- WorkflowOperationBehavior.cs
- DocumentOrderQuery.cs
- CompositeFontFamily.cs
- DesignerActionListCollection.cs
- CompensateDesigner.cs
- BaseDataListDesigner.cs
- SingleAnimation.cs
- SqlGatherProducedAliases.cs
- ChangePassword.cs
- SubMenuStyleCollection.cs
- InputMethodStateTypeInfo.cs
- LocalIdKeyIdentifierClause.cs
- StringUtil.cs
- ContextProperty.cs
- TabControlCancelEvent.cs
- COM2FontConverter.cs
- DoubleCollectionValueSerializer.cs
- ChangePassword.cs
- CoTaskMemUnicodeSafeHandle.cs
- CompoundFileDeflateTransform.cs
- SettingsPropertyValueCollection.cs
- VectorValueSerializer.cs
- NavigationProperty.cs
- Path.cs
- AssociatedControlConverter.cs
- ObjectContextServiceProvider.cs
- BaseValidator.cs
- SecurityUtils.cs
- DataGridViewColumnConverter.cs
- CodeTypeDeclaration.cs
- DataObjectPastingEventArgs.cs
- XamlWriter.cs
- XPathMessageFilterElementComparer.cs
- DeferredRunTextReference.cs
- NonVisualControlAttribute.cs
- LoginStatusDesigner.cs
- TraceEventCache.cs
- EndPoint.cs
- ClientSettings.cs
- TextSelectionHelper.cs
- PointLight.cs
- KoreanLunisolarCalendar.cs
- StyleSelector.cs
- RoleGroup.cs
- ScrollBarRenderer.cs
- GenericWebPart.cs
- OutputScopeManager.cs
- DataColumnMapping.cs
- ItemList.cs
- CopyAction.cs
- HashSetDebugView.cs
- XmlNullResolver.cs
- String.cs
- CounterSampleCalculator.cs
- Tool.cs
- MergeFilterQuery.cs
- ConfigurationStrings.cs
- DbUpdateCommandTree.cs
- RemoteWebConfigurationHost.cs
- Transform.cs
- MarkupCompilePass1.cs
- DataGridTablesFactory.cs
- ObfuscationAttribute.cs
- Expr.cs