<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>RawLayoutConverter Class</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">RawLayoutConverter Class</h1>
      </div>
    </div>
    <div id="nstext">
      <p> Type converter for the <a href="log4net.Layout.IRawLayout.html">IRawLayout</a> interface </p>
      <p>For a list of all members of this type, see <a href="log4net.Layout.RawLayoutConverterMembers.html">RawLayoutConverter Members</a>.</p>
      <p>
        <a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassTopic.htm">System.Object</a>
        <br />���<b>log4net.Layout.RawLayoutConverter</b></p>
      <div class="syntax">
        <span class="lang">[Visual�Basic]</span>
        <br />Public�Class�RawLayoutConverter<div>����Implements�<a href="log4net.Util.TypeConverters.IConvertFrom.html">IConvertFrom</a></div></div>
      <div class="syntax">
        <span class="lang">[C#]</span>
        <div>public�class�RawLayoutConverter<b> : <a href="log4net.Util.TypeConverters.IConvertFrom.html">IConvertFrom</a></b></div>
      </div>
      <H4 class="dtH4">Thread Safety</H4>
      <P>Public static (<b>Shared</b> in Visual Basic) members of this type are 
				safe for multithreaded operations. Instance members are <b>not</b> guaranteed to be 
				thread-safe.</P>
      <h4 class="dtH4">Remarks</h4>
            <p> Used to convert objects to the <a href="log4net.Layout.IRawLayout.html">IRawLayout</a> interface. Supports converting from the <a href="log4net.Layout.ILayout.html">ILayout</a> interface to the <b>IRawLayout</b> interface using the <a href="log4net.Layout.Layout2RawLayoutAdapter.html">Layout2RawLayoutAdapter</a>. </p>
            <h4 class="dtH4">Requirements</h4><p><b>Namespace: </b><a href="log4net.Layout.html">log4net.Layout</a></p><p><b>Assembly: </b>log4net (in log4net.dll)
					</p><h4 class="dtH4">See Also</h4><p><a href="log4net.Layout.RawLayoutConverterMembers.html">RawLayoutConverter Members</a> | <a href="log4net.Layout.html">log4net.Layout Namespace</a></p><object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e" viewastext="true" style="display: none;"><param name="Keyword" value="RawLayoutConverter class, about RawLayoutConverter class"></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>
