<?xml version="1.0" encoding="utf-8"?>
<Type Name="DataBoundControlAdapter" FullName="System.Web.UI.WebControls.Adapters.DataBoundControlAdapter">
  <TypeSignature Language="C#" Value="public class DataBoundControlAdapter : System.Web.UI.WebControls.Adapters.WebControlAdapter" />
  <AssemblyInfo>
    <AssemblyName>System.Web</AssemblyName>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <Base>
    <BaseTypeName>System.Web.UI.WebControls.Adapters.WebControlAdapter</BaseTypeName>
  </Base>
  <Interfaces />
  <Docs>
    <since version=".NET 2.0" />
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>A control derived from the <see cref="T:System.Web.UI.WebControls.DataBoundControl" /> class is bound to a data source and generates its user interface or child control hierarchy by enumerating the items in the data source to which it is bound. <see cref="T:System.Web.UI.WebControls.DataBoundControl" /> is an abstract base class that defines the common characteristics of all controls that can be bound to a data source, such as the <see cref="T:System.Web.UI.WebControls.DataGrid" /> and <see cref="T:System.Web.UI.WebControls.ListBox" /> controls. For more information, see <see cref="T:System.Web.UI.WebControls.DataBoundControl" />.</para>
      <para>A <see cref="T:System.Web.UI.WebControls.Adapters.DataBoundControlAdapter" /> modifies the behavior of a <see cref="T:System.Web.UI.WebControls.DataBoundControl" /> for a specific browser or class of browsers, or acts as a filter on some capability. Much of the adaptability in rendering behavior can be encapsulated in the specialized classes that derive from the <see cref="T:System.Web.UI.HtmlTextWriter" /> class. Therefore, it is likely that a single adapter can be used for a number of browser class behaviors or that inclusion of the adaptability in the <see cref="T:System.Web.UI.HtmlTextWriter" /> classes can make the use of a control adapter unnecessary.</para>
      <para>Each control has explicit mappings to adapters through the .browser definition files, if there are &lt;controlAdapter&gt; entries in these files. Thus, any access to the <see cref="P:System.Web.UI.Control.Adapter" /> property of the <see cref="T:System.Web.UI.WebControls.DataBoundControl" /> uses the <see cref="T:System.Web.HttpBrowserCapabilities" /> object extracted from the .browser definition files to perform the lookup for the mapping of the adapter to control.</para>
      <para>During processing, the .NET Framework intercepts calls to the methods of a control that could be browser specific. If a control adapter is attached, the .NET Framework calls the associated adapter methods. For more information, see <see cref="T:System.Web.UI.Adapters.ControlAdapter" />.</para>
      <para>The M:System.Web.UI.WebControls.Adapters.DataBoundControlAdapter.PerformDataBinding(System.Collections.IEnumerable) method binds an enumerable collection to the associated <see cref="T:System.Web.UI.WebControls.DataBoundControl" />. The <see cref="P:System.Web.UI.WebControls.Adapters.DataBoundControlAdapter.Control" /> property returns a strongly typed reference to the <see cref="T:System.Web.UI.WebControls.DataBoundControl" />.</para>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Customizes the behavior of a <see cref="T:System.Web.UI.WebControls.DataBoundControl" /> object with which the adapter is associated for specific browser requests.</para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName=".ctor">
      <MemberSignature Language="C#" Value="public DataBoundControlAdapter ();" />
      <MemberType>Constructor</MemberType>
      <Parameters />
      <Docs>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The .NET Framework internally constructs a new instance of the <see cref="T:System.Web.UI.WebControls.Adapters.DataBoundControlAdapter" /> class when it creates the corresponding <see cref="T:System.Web.UI.WebControls.Adapters.DataBoundControlAdapter" /> object.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Initializes a new instance of the <see cref="T:System.Web.UI.WebControls.Adapters.DataBoundControlAdapter" /> class.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="Control">
      <MemberSignature Language="C#" Value="protected System.Web.UI.WebControls.DataBoundControl Control { get; }" />
      <MemberType>Property</MemberType>
      <ReturnValue>
        <ReturnType>System.Web.UI.WebControls.DataBoundControl</ReturnType>
      </ReturnValue>
      <Docs>
        <value>To be added.</value>
        <since version=".NET 2.0" />
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>When a <see cref="T:System.Web.UI.WebControls.Adapters.DataBoundControlAdapter" /> object is attached to a <see cref="T:System.Web.UI.WebControls.DataBoundControl" /> control, the .NET Framework calls certain adapter members instead of the control members. </para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Retrieves a strongly-typed reference to the <see cref="T:System.Web.UI.WebControls.DataBoundControl" /> object associated with this control adapter.</para>
        </summary>
      </Docs>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
    </Member>
    <Member MemberName="PerformDataBinding">
      <MemberSignature Language="C#" Value="protected virtual void PerformDataBinding (System.Collections.IEnumerable data);" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Void</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="data" Type="System.Collections.IEnumerable" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The <see cref="M:System.Web.UI.WebControls.Adapters.DataBoundControlAdapter.PerformDataBinding(System.Collections.IEnumerable)" /> method is called in place of the <see cref="M:System.Web.UI.WebControls.DataBoundControl.PerformDataBinding(System.Collections.IEnumerable)" /> method when a <see cref="T:System.Web.UI.WebControls.Adapters.DataBoundControlAdapter" /> control adapter is attached to a control derived from the <see cref="T:System.Web.UI.WebControls.DataBoundControl" /> class.</para>
          <para>Typically, an override of <see cref="M:System.Web.UI.WebControls.DataBoundControl.PerformDataBinding(System.Collections.IEnumerable)" /> iterates through data, creating distinct names and values when necessary, and saves it to an internal collection. Usually, <see cref="M:System.Web.UI.WebControls.WebControl.RenderContents(System.Web.UI.HtmlTextWriter)" /> or a similar method of the <see cref="T:System.Web.UI.WebControls.DataBoundControl" /> will populate the user interface or child controls from that internal collection.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Binds the data in the data source of the associated <see cref="T:System.Web.UI.WebControls.DataBoundControl" /> object to the control adapter.</para>
        </summary>
        <param name="data">
          <attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.IEnumerable" /> of <see cref="T:System.Object" /> to be bound to the derived <see cref="T:System.Web.UI.WebControls.DataBoundControl" />.</param>
      </Docs>
    </Member>
  </Members>
</Type>