<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>RendererMap.Get Method (Type)</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">RendererMap.Get�Method�(Type)</h1>
      </div>
    </div>
    <div id="nstext">
      <p> Gets the renderer for the specified type </p>
      <div class="syntax">
        <span class="lang">[Visual�Basic]</span>
        <br />Overloads�Public�Function�Get( _<br />���ByVal <i>type</i>�As�<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemTypeClassTopic.htm">Type</a>�_<br />)�As�<a href="log4net.ObjectRenderer.IObjectRenderer.html">IObjectRenderer</a></div>
      <div class="syntax">
        <span class="lang">[C#]</span>
        <br />public�<a href="log4net.ObjectRenderer.IObjectRenderer.html">IObjectRenderer</a>�Get(<br />���<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemTypeClassTopic.htm">Type</a>�<i>type</i><br />);</div>
      <h4 class="dtH4">Parameters</h4>
      <dl>
        <dt>
          <i>type</i>
        </dt>
        <dd>the type to lookup the renderer for</dd>
      </dl>
      <h4 class="dtH4">Return Value</h4>
      <p>the renderer for the specified type</p>
      <h4 class="dtH4">Remarks</h4>
            <p> Returns the renderer for the specified type. If no specific renderer has been defined the <a href="log4net.ObjectRenderer.RendererMap.DefaultRenderer.html">DefaultRenderer</a> will be returned. </p>
            <h4 class="dtH4">See Also</h4><p><a href="log4net.ObjectRenderer.RendererMap.html">RendererMap Class</a> | <a href="log4net.ObjectRenderer.html">log4net.ObjectRenderer Namespace</a> | <a href="log4net.ObjectRenderer.RendererMap.Get_overloads.html">RendererMap.Get 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="Get method"></param><param name="Keyword" value="Get method, RendererMap class"></param><param name="Keyword" value="RendererMap.Get 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>
