1 //------------------------------------------------------------------------------
2 // <copyright file="WebControlAdapter.cs" company="Microsoft">
3 //     Copyright (c) Microsoft Corporation.  All rights reserved.
4 // </copyright>
5 //------------------------------------------------------------------------------
6 
7 namespace System.Web.UI.WebControls.Adapters {
8 
9     using System;
10     using System.Web;
11     using System.Web.UI;
12     using System.Web.UI.Adapters;
13 
14     // Provides adaptive rendering for a web control.
15     public class WebControlAdapter : ControlAdapter {
16         // Returns a strongly typed control instance.
17         protected new WebControl Control {
18             get {
19                 return (WebControl)base.Control;
20             }
21         }
22 
23         /// Indicates whether the associated WebControl is enabled
24         /// taking into account the cascading effect of the enabled property.
25         protected bool IsEnabled {
26             get {
27                 return Control.IsEnabled;
28             }
29         }
30 
RenderBeginTag(HtmlTextWriter writer)31         protected virtual void RenderBeginTag(HtmlTextWriter writer) {
32             Control.RenderBeginTag(writer);
33         }
34 
RenderEndTag(HtmlTextWriter writer)35         protected virtual void RenderEndTag(HtmlTextWriter writer) {
36             Control.RenderEndTag(writer);
37         }
38 
RenderContents(HtmlTextWriter writer)39         protected virtual void RenderContents(HtmlTextWriter writer) {
40             Control.RenderContents(writer);
41         }
42 
Render(HtmlTextWriter writer)43         protected internal override void Render(HtmlTextWriter writer) {
44             RenderBeginTag(writer);
45             RenderContents(writer);
46             RenderEndTag(writer);
47         }
48     }
49 }
50