<html dir="LTR">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=Windows-1252" />
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5" />
    <title>AppenderCollection.AddRange Method (AppenderCollection)</title>
    <xml>
    </xml>
    <link rel="stylesheet" type="text/css" href="MSDN.css" />
  </head>
  <body id="bodyID" class="dtBODY">
    <div id="nsbanner">
      <div id="bannerrow1">
        <table class="bannerparthead" cellspacing="0">
          <tr id="hdr">
            <td class="runninghead">Apache log4net� SDK Documentation - Microsoft .NET Framework 4.0</td>
            <td class="product">
            </td>
          </tr>
        </table>
      </div>
      <div id="TitleRow">
        <h1 class="dtH1">AppenderCollection.AddRange�Method�(AppenderCollection)</h1>
      </div>
    </div>
    <div id="nstext">
      <p> Adds the elements of another <code>AppenderCollection</code> to the current <code>AppenderCollection</code>. </p>
      <div class="syntax">
        <span class="lang">[Visual�Basic]</span>
        <br />Overridable�Overloads�Public�Function�AddRange( _<br />���ByVal <i>x</i>�As�<a href="log4net.Appender.AppenderCollection.html">AppenderCollection</a>�_<br />)�As�<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemInt32ClassTopic.htm">Integer</a></div>
      <div class="syntax">
        <span class="lang">[C#]</span>
        <br />public�virtual�<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemInt32ClassTopic.htm">int</a>�AddRange(<br />���<a href="log4net.Appender.AppenderCollection.html">AppenderCollection</a>�<i>x</i><br />);</div>
      <h4 class="dtH4">Parameters</h4>
      <dl>
        <dt>
          <i>x</i>
        </dt>
        <dd>The <code>AppenderCollection</code> whose elements should be added to the end of the current <code>AppenderCollection</code>.</dd>
      </dl>
      <h4 class="dtH4">Return Value</h4>
      <p>The new <a href="log4net.Appender.AppenderCollection.Count.html">Count</a> of the <code>AppenderCollection</code>.</p>
      <h4 class="dtH4">See Also</h4>
      <p>
        <a href="log4net.Appender.AppenderCollection.html">AppenderCollection Class</a> | <a href="log4net.Appender.html">log4net.Appender Namespace</a> | <a href="log4net.Appender.AppenderCollection.AddRange_overloads.html">AppenderCollection.AddRange Overload List</a></p>
      <object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e" viewastext="true" style="display: none;">
        <param name="Keyword" value="AddRange method">
        </param>
        <param name="Keyword" value="AddRange method, AppenderCollection class">
        </param>
        <param name="Keyword" value="AppenderCollection.AddRange method">
        </param>
      </object>
      <hr />
      <div id="footer"><a href='http://logging.apache.org/log4net/'>Copyright 2004-2011 The Apache Software Foundation.</a><br></br>Apache log4net, Apache and log4net are trademarks of The Apache Software Foundation.</div>
    </div>
  </body>
</html>
