Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / 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;
}
}
}
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DataGridViewRowCancelEventArgs.cs
- MenuAdapter.cs
- CodeDomLoader.cs
- TextRange.cs
- Guid.cs
- Accessors.cs
- GradientStopCollection.cs
- ResponseStream.cs
- HtmlImage.cs
- SqlFlattener.cs
- CommandLibraryHelper.cs
- KeyedCollection.cs
- MaterialGroup.cs
- WindowsUpDown.cs
- XmlSequenceWriter.cs
- LogExtentCollection.cs
- ToggleButtonAutomationPeer.cs
- FlowchartDesigner.xaml.cs
- InstanceCreationEditor.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- ToolStripMenuItem.cs
- SystemColors.cs
- SslStream.cs
- MeshGeometry3D.cs
- safex509handles.cs
- WebPartDescriptionCollection.cs
- AsymmetricKeyExchangeFormatter.cs
- Setter.cs
- AttributeUsageAttribute.cs
- DeviceContexts.cs
- InterleavedZipPartStream.cs
- ObjectHandle.cs
- BuildDependencySet.cs
- XPathChildIterator.cs
- DataGridBoolColumn.cs
- UnsafeNativeMethods.cs
- Array.cs
- NestPullup.cs
- ByteStack.cs
- FixedSOMPage.cs
- FormatSettings.cs
- ContainerParaClient.cs
- SqlClientWrapperSmiStream.cs
- DataGridColumn.cs
- Underline.cs
- ClientProxyGenerator.cs
- PersonalizationAdministration.cs
- RichTextBox.cs
- NullExtension.cs
- TaskFormBase.cs
- TextElementEnumerator.cs
- TemporaryBitmapFile.cs
- QueryableDataSource.cs
- QilTypeChecker.cs
- SchemaEntity.cs
- WebPartUtil.cs
- ResourceExpressionBuilder.cs
- StackBuilderSink.cs
- FormatException.cs
- SecurityUtils.cs
- DataPager.cs
- XmlSchema.cs
- RenderTargetBitmap.cs
- LinearKeyFrames.cs
- OLEDB_Util.cs
- IntPtr.cs
- CultureInfoConverter.cs
- AndCondition.cs
- Lease.cs
- MethodBuilderInstantiation.cs
- TextRunTypographyProperties.cs
- XmlSerializerVersionAttribute.cs
- TdsParserHelperClasses.cs
- QualifiedCellIdBoolean.cs
- GifBitmapDecoder.cs
- TemplateLookupAction.cs
- DataGridViewCellCollection.cs
- PeerContact.cs
- MsmqProcessProtocolHandler.cs
- VisualBrush.cs
- MimeFormImporter.cs
- SoapReflectionImporter.cs
- DataPagerFieldCommandEventArgs.cs
- SQLInt32Storage.cs
- VBIdentifierDesigner.xaml.cs
- XomlCompiler.cs
- Application.cs
- ObjectHandle.cs
- ColumnResult.cs
- BitmapCache.cs
- ProxyAttribute.cs
- DataGridCommandEventArgs.cs
- VBCodeProvider.cs
- AnonymousIdentificationModule.cs
- PiiTraceSource.cs
- CompositeCollection.cs
- RepeatInfo.cs
- PeerName.cs
- TypeUtil.cs
- TreeViewImageKeyConverter.cs