<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>RawPropertyLayout.Format Method</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">RawPropertyLayout.Format�Method�</h1>
      </div>
    </div>
    <div id="nstext">
      <p> Lookup the property for <a href="log4net.Layout.RawPropertyLayout.Key.html">Key</a>
            </p>
      <div class="syntax">
        <span class="lang">[Visual�Basic]</span>
        <br />Overridable�Public�Function�Format( _<br />���ByVal <i>loggingEvent</i>�As�<a href="log4net.Core.LoggingEvent.html">LoggingEvent</a>�_<br />)�As�<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassTopic.htm">Object</a>�_<div>����Implements�<a href="log4net.Layout.IRawLayout.Format.html">IRawLayout.Format</a></div></div>
      <div class="syntax">
        <span class="lang">[C#]</span>
        <br />public�virtual�<a href="ms-help://MS.NETFrameworkSDKv1.1/cpref/html/frlrfSystemObjectClassTopic.htm">object</a>�Format(<br />���<a href="log4net.Core.LoggingEvent.html">LoggingEvent</a>�<i>loggingEvent</i><br />);</div>
      <h4 class="dtH4">Parameters</h4>
      <dl>
        <dt>
          <i>loggingEvent</i>
        </dt>
        <dd>The event to format</dd>
      </dl>
      <h4 class="dtH4">Return Value</h4>
      <p>returns property value</p>
      <h4 class="dtH4">Implements</h4>
      <p>
        <a href="log4net.Layout.IRawLayout.Format.html">IRawLayout.Format</a>
      </p>
      <h4 class="dtH4">Remarks</h4>
            <p> Looks up and returns the object value of the property named <a href="log4net.Layout.RawPropertyLayout.Key.html">Key</a>. If there is no property defined with than name then <code>null</code> will be returned. </p>
            <h4 class="dtH4">See Also</h4><p><a href="log4net.Layout.RawPropertyLayout.html">RawPropertyLayout Class</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="Format method"></param><param name="Keyword" value="Format method, RawPropertyLayout class"></param><param name="Keyword" value="RawPropertyLayout.Format 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>
