document.write('\
<div class="poshcode code posh">\
<style type="text/css">\
');
document.write("/**\
 * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann\
 * (http://qbnz.com/highlighter/ and http://geshi.org/)\
 */\
.posh .de1, .posh .de2 {font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;}\
.posh  {font-family:monospace;}\
.posh .imp {font-weight: bold; color: red;}\
.posh li, .posh .li1 {background: #ffffff;}\
.posh .ln {width:1px;text-align:right;margin:0;padding:0 2px;vertical-align:top;}\
.posh .li2 {background: #eeeeee;}\
.posh .kw1 {color: #666699; font-weight: bold;}\
.posh .kw2 {color: #333399; font-weight: bold; font-style: italic;}\
.posh .kw3 {color: #003366; font-weight: bold;}\
.posh .kw4 {color: #660033;}\
.posh .co1 {color: #666666; font-style: italic;}\
.posh .coMULTI {color: #666666; font-style: italic;}\
.posh .es0 {color: #000099; font-weight: bold;}\
.posh .br0 {color: #333;}\
.posh .sy0 {color: #66cc66;}\
.posh .st0 {color: #009900;}\
.posh .nu0 {color: #cc66cc;}\
.posh .me1 {color: #003366;}\
.posh .me2 {color: #003366;}\
.posh .re0 {color: #0066cc; font-style: italic;}\
.posh .re1 {font-style: normal;}\
.posh .re2 {color: #000066;}\
.posh .re3 {color: #660033; font-weight: bold;}\
.posh .re4 {color: #003366; font-weight: bold;}\
.posh span.xtra { display:block; }\
");
document.write(".posh ol {float:left; margin: 0px !important; padding: 0px; min-width:100% !important; list-style-position: inside;}\
.posh li.li2, .posh li.li1 {list-style-type:decimal-leading-zero; white-space:nowrap; padding:0 1em 0 0.5em;}\
.posh li {color: #ccc;}\
.posh li div {color: #000; display: inline;}\
.syntax {background:none repeat scroll 0 0 #eee; border:0.5em solid #ccc;}\
.syntax .posh {overflow: auto;}\
.syntax .poshcredit {\
background-color:#eaeaea; color:#666;\
padding:0.5em 1em; clear:both;\
font-size:85%;\
}");
document.write("\n</style>");
document.write('<div class="syntax"><div class="posh" style="font-family:monospace;"><ol><li class="li1"><div class="de1"><span class="kw1">function</span> <span class="re0">Format-<span class="re1">PoshTable</span></span> <span class="br0">&#123;</span></div></li>\
<li class="li2"><div class="de2"><span class="co1">#.Synopsis</span></div></li>\
<li class="li1"><div class="de1"><span class="co1"># &nbsp;Format-PoshTable puts the output in a WPF DataGrid (inline in PoshConsole)</span></div></li>\
<li class="li2"><div class="de2"><span class="co1">#.Description </span></div></li>\
<li class="li1"><div class="de1"><span class="co1"># &nbsp;Outputs a WPF datagrid of the objects (and properties) specified. </span></div></li>\
<li class="li2"><div class="de2"><span class="co1"># &nbsp;This grid can be sorted, rearranged, etc</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>CmdletBinding<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">param</span><span class="br0">&#40;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>parameter<span class="br0">&#40;</span>ValueFromPipeline<span class="sy0">=</span><span class="re3">$true</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; <span class="re4"><span class="br0">&#91;</span><span class="kw3">Array</span><span class="br0">&#93;</span></span><span class="re3">$InputObject</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp;,</div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>Parameter<span class="br0">&#40;</span>Position<span class="sy0">=</span><span class="nu0">1</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="re4"><span class="br0">&#91;</span><span class="kw3">String</span><span class="br0">&#91;</span><span class="br0">&#93;</span><span class="br0">&#93;</span></span><span class="re3">$Property</span> <span class="sy0">=</span> <span class="st0">&quot;*&quot;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp;,</div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>Parameter<span class="br0">&#40;</span>Position<span class="sy0">=</span><span class="nu0">2</span><span class="br0">&#41;</span><span class="br0">&#93;</span><span class="br0">&#91;</span>Alias<span class="br0">&#40;</span><span class="st0">&quot;Type&quot;</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; <span class="re4"><span class="br0">&#91;</span><span class="kw3">Type</span><span class="br0">&#93;</span></span><span class="re3">$BaseType</span> <span class="co1"># a type to use as the generic in the collection</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp;,</div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>Parameter<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#93;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="re4"><span class="br0">&#91;</span><span class="kw1">Switch</span><span class="br0">&#93;</span></span><span class="re3">$Popup</span> <span class="sy0">=</span> <span class="br0">&#40;</span><span class="sy0">!</span><span class="re4"><span class="br0">&#91;</span><span class="kw3">bool</span><span class="br0">&#93;</span></span><span class="re3">$Host</span>.<span class="me1">PrivateData</span>.<span class="me1">WpfConsole</span><span class="br0">&#41;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#41;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">Begin</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; <span class="re3">$global</span>:theFormatPoshTableDataGrid <span class="sy0">=</span> <span class="re3">$null</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span> <span class="br0">&#40;</span><span class="sy0">!</span><span class="br0">&#40;</span><span class="re0">Get-<span class="re1">Command</span></span> datagrid<span class="br0">&#41;</span> <span class="br0">&#41;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">Import-<span class="re1">Module</span></span> PowerBoots</div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="re0">Add-<span class="re1">BootsFunction</span></span> <span class="st0">\'C:\\Program Files (x86)\\WPF Toolkit\\*\\WPFToolkit.dll\'</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">Process</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; <span class="co1"># Create the window here instead of in BEGIN because we need to know the TYPE for the datagrid</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span><span class="sy0">!</span><span class="re3">$global</span>:theFormatPoshTableDataGrid<span class="br0">&#41;</span> <span class="br0">&#123;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="kw1">if</span><span class="br0">&#40;</span><span class="sy0">!</span><span class="re3">$BaseType</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> <span class="re3">$BaseType</span> <span class="sy0">=</span> <span class="re3">$InputObject</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span>.<span class="me1">GetType</span><span class="br0">&#40;</span><span class="br0">&#41;</span>.<span class="me1">FullName</span> <span class="br0">&#125;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="co1"># We\'re going to create a special collection ... </span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re3">$global</span>:ObservableCollection <span class="sy0">=</span> <span class="re0">new-<span class="re1">object</span></span> <span class="kw3">System</span>.<span class="me1">Collections</span>.<span class="me1">ObjectModel</span>.<span class="me1">ObservableCollection</span><span class="br0">&#91;</span><span class="re3">$BaseType</span><span class="br0">&#93;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="kw1">foreach</span><span class="br0">&#40;</span><span class="re3">$i</span> <span class="kw1">in</span> <span class="re3">$InputObject</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> <span class="re3">$ObservableCollection</span>.<span class="me1">Add</span><span class="br0">&#40;</span><span class="re3">$i</span><span class="br0">&#41;</span> <span class="sy0">&gt;</span> <span class="re3">$null</span> <span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;boots <span class="br0">&#123;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">Param</span><span class="br0">&#40;</span><span class="re3">$ItemCollection</span>, <span class="re3">$Property</span><span class="br0">&#41;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; datagrid <span class="re2">-RowBackground</span> <span class="st0">&quot;AliceBlue&quot;</span> <span class="re2">-AlternatingRowBackground</span> <span class="st0">&quot;LightBlue&quot;</span> <span class="re2">-On_AutoGeneratingColumn</span> <span class="br0">&#123;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="kw1">Param</span><span class="br0">&#40;</span><span class="re3">$Source</span>,<span class="re3">$SourceEventArgs</span><span class="br0">&#41;</span> </div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="re3">$header</span> <span class="sy0">=</span> <span class="re3">$SourceEventArgs</span>.<span class="me1">Column</span>.<span class="me1">Header</span>.<span class="me1">ToString</span><span class="br0">&#40;</span><span class="br0">&#41;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="re3">$Cancel</span> <span class="sy0">=</span> <span class="re3">$true</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="co1"># If it matches any of the properties, don\'t cancel it.</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="kw1">foreach</span><span class="br0">&#40;</span><span class="re3">$h</span> <span class="kw1">in</span> <span class="re3">$Source</span>.<span class="me1">Tag</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> &nbsp;<span class="kw1">if</span><span class="br0">&#40;</span><span class="re3">$header</span> <span class="re2">-like</span> <span class="re3">$h</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> &nbsp;<span class="re3">$Cancel</span> <span class="sy0">=</span> <span class="re3">$false</span> <span class="br0">&#125;</span> <span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="re3">$SourceEventArgs</span>.<span class="me1">Cancel</span> <span class="sy0">=</span> <span class="re3">$Cancel</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> &nbsp;<span class="re2">-ColumnHeaderStyle</span> <span class="br0">&#123;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Style <span class="re2">-Setters</span> <span class="br0">&#123;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Setter <span class="re2">-Property</span> <span class="br0">&#40;</span><span class="re4"><span class="br0">&#91;</span><span class="kw3">System</span>.<span class="me1">Windows</span>.<span class="me1">Controls</span>.<span class="me1">ListView</span><span class="br0">&#93;</span></span>::<span class="me2">FontWeightProperty</span><span class="br0">&#41;</span> <span class="re2">-Value</span> <span class="br0">&#40;</span><span class="re4"><span class="br0">&#91;</span><span class="kw3">System</span>.<span class="me1">Windows</span>.<span class="me1">FontWeights</span><span class="br0">&#93;</span></span>::<span class="me2">ExtraBold</span><span class="br0">&#41;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> <span class="re2">-ItemsSource</span> <span class="re3">$ItemCollection</span> <span class="re2">-ov</span> global:theFormatPoshTableDataGrid <span class="re2">-tag</span> <span class="re3">$Property</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<span class="br0">&#125;</span> <span class="re3">$ObservableCollection</span> <span class="re3">$Property</span> <span class="re2">-Inline</span>:<span class="br0">&#40;</span><span class="sy0">!</span><span class="re3">$Popup</span><span class="br0">&#41;</span> <span class="re2">-Popup</span>:<span class="re3">$Popup</span></div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span> <span class="kw1">else</span> <span class="br0">&#123;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;@<span class="br0">&#40;</span><span class="re3">$global</span>:theFormatPoshTableDataGrid<span class="br0">&#41;</span><span class="br0">&#91;</span><span class="nu0">0</span><span class="br0">&#93;</span>.<span class="me1">Dispatcher</span>.<span class="me1">Invoke</span><span class="br0">&#40;</span> <span class="st0">&quot;Normal&quot;</span>, <span class="br0">&#40;</span><span class="re4"><span class="br0">&#91;</span>Action<span class="br0">&#93;</span></span><span class="br0">&#123;</span> &nbsp;<span class="kw1">foreach</span><span class="br0">&#40;</span><span class="re3">$i</span> <span class="kw1">in</span> @<span class="br0">&#40;</span><span class="re3">$InputObject</span><span class="br0">&#41;</span><span class="br0">&#41;</span> <span class="br0">&#123;</span> <span class="re3">$global</span>:ObservableCollection.<span class="me1">Add</span><span class="br0">&#40;</span><span class="re3">$i</span><span class="br0">&#41;</span> <span class="sy0">&gt;</span> <span class="re3">$null</span> <span class="br0">&#125;</span> <span class="br0">&#125;</span><span class="br0">&#41;</span> <span class="br0">&#41;</span> &nbsp;</div></li>\
<li class="li1"><div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>\
<li class="li2"><div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div></li>\
<li class="li1"><div class="de1"><span class="br0">&#125;</span></div></li>\
</ol></div>');document.write('<div class="poshcredit"><a style="float:right;" href="http://poshcode.org/get/1699" title="download file">download</a><a href="http://poshcode.org/?show=1699" title="full view">This Script</a> brought to you by <a href="http://PoshCode.org">PoshCode</a>\
</div>\
</div>\
</div>');