<?xml version="1.0" encoding="utf-8"?>
<Type Name="IConfigurationSectionHandler" FullName="System.Configuration.IConfigurationSectionHandler">
  <TypeSignature Language="C#" Maintainer="auto" Value="public interface IConfigurationSectionHandler" />
  <TypeSignature Language="ILAsm" Value=".class public interface auto ansi abstract IConfigurationSectionHandler" />
  <AssemblyInfo>
    <AssemblyName>System</AssemblyName>
    <AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey>
    <AssemblyVersion>1.0.3300.0</AssemblyVersion>
    <AssemblyVersion>1.0.5000.0</AssemblyVersion>
    <AssemblyVersion>2.0.0.0</AssemblyVersion>
    <AssemblyVersion>4.0.0.0</AssemblyVersion>
  </AssemblyInfo>
  <ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement>
  <Interfaces />
  <Docs>
    <remarks>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Important   <see cref="T:System.Configuration.IConfigurationSectionHandler" /> is deprecated in .NET Framework 2.0 and above. But, because it is used internally, it has been kept. You can find an example at <format type="text/html"><a href="07f68a3f-2920-4665-a824-47bda744e662">How to: Create Custom Configuration Sections Using IConfigurationSectionHandler</a></format>. If you use the previous example, please build it with the .NET Framework version 1.0 or 1.1.</para>
      <para>In .NET Framework version 2.0 and above, you must instead derive from the <see cref="T:System.Configuration.ConfigurationSection" /> class to implement the related configuration section handler. You can find an example at <format type="text/html"><a href="febaca98-c727-4017-95ed-82e2fb6cf234">How to: Create Custom Configuration Sections Using ConfigurationSection</a></format>.</para>
      <para>Instances of the <see cref="T:System.Configuration.IConfigurationSectionHandler" /> class must be thread safe and stateless. The <see cref="M:System.Configuration.IConfigurationSectionHandler.Create(System.Object,System.Object,System.Xml.XmlNode)" /> method must be callable from multiple threads simultaneously.</para>
      <para>Furthermore, the configuration object generated by the <see cref="M:System.Configuration.IConfigurationSectionHandler.Create(System.Object,System.Object,System.Xml.XmlNode)" /> method must be thread safe and immutable. Because the configuration objects are cached by the configuration system, it is important not to modify the parent argument to the <see cref="M:System.Configuration.IConfigurationSectionHandler.Create(System.Object,System.Object,System.Xml.XmlNode)" /> method. For example, if the return value of <see cref="M:System.Configuration.IConfigurationSectionHandler.Create(System.Object,System.Object,System.Xml.XmlNode)" /> is only a small modification of the parent, actual modifications must be made on a clone of the parent, not the original.</para>
    </remarks>
    <summary>
      <attribution license="cc4" from="Microsoft" modified="false" />
      <para>Handles the access to certain configuration sections.</para>
    </summary>
  </Docs>
  <Members>
    <Member MemberName="Create">
      <MemberSignature Language="C#" Value="public object Create (object parent, object configContext, System.Xml.XmlNode section);" />
      <MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance object Create(object parent, object configContext, class System.Xml.XmlNode section) cil managed" />
      <MemberType>Method</MemberType>
      <AssemblyInfo>
        <AssemblyVersion>1.0.5000.0</AssemblyVersion>
        <AssemblyVersion>2.0.0.0</AssemblyVersion>
        <AssemblyVersion>4.0.0.0</AssemblyVersion>
      </AssemblyInfo>
      <ReturnValue>
        <ReturnType>System.Object</ReturnType>
      </ReturnValue>
      <Parameters>
        <Parameter Name="parent" Type="System.Object" />
        <Parameter Name="configContext" Type="System.Object" />
        <Parameter Name="section" Type="System.Xml.XmlNode" />
      </Parameters>
      <Docs>
        <remarks>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Instances of the <see cref="T:System.Configuration.IConfigurationSectionHandler" /> class must be thread safe and stateless. The <see cref="M:System.Configuration.IConfigurationSectionHandler.Create(System.Object,System.Object,System.Xml.XmlNode)" /> method must be callable from multiple threads simultaneously.</para>
          <para>Furthermore, the configuration object generated by the <see cref="M:System.Configuration.IConfigurationSectionHandler.Create(System.Object,System.Object,System.Xml.XmlNode)" /> method must be thread safe and immutable. Because the configuration objects are cached by the configuration system, it is important not to modify the parent argument to <see cref="M:System.Configuration.IConfigurationSectionHandler.Create(System.Object,System.Object,System.Xml.XmlNode)" />. For example, if the return value of <see cref="M:System.Configuration.IConfigurationSectionHandler.Create(System.Object,System.Object,System.Xml.XmlNode)" /> is only a small modification of the parent, actual modifications must be made on a clone of the parent, not the original.</para>
        </remarks>
        <summary>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>Creates a configuration section handler.</para>
        </summary>
        <returns>
          <attribution license="cc4" from="Microsoft" modified="false" />
          <para>The created section handler object.</para>
        </returns>
        <param name="parent">
          <attribution license="cc4" from="Microsoft" modified="false" />Parent object.</param>
        <param name="configContext">
          <attribution license="cc4" from="Microsoft" modified="false" />Configuration context object.</param>
        <param name="section">
          <attribution license="cc4" from="Microsoft" modified="false" />Section XML node.</param>
      </Docs>
    </Member>
  </Members>
</Type>