<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	>

<channel>
	<title>Thinking about Code</title>
	<atom:link href="http://blog.waltritscher.com/index.php/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.waltritscher.com</link>
	<description>Thoughts about .NET.  Thoughts about code.</description>
	<pubDate>Tue, 01 Sep 2009 06:45:29 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Powershell &#8211; searching content of files</title>
		<link>http://blog.waltritscher.com/index.php/2009/08/31/powershell-searching-content-of-files/</link>
		<comments>http://blog.waltritscher.com/index.php/2009/08/31/powershell-searching-content-of-files/#comments</comments>
		<pubDate>Mon, 31 Aug 2009 20:56:00 +0000</pubDate>
		<dc:creator>Walt Ritscher</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[Powershell]]></category>

		<guid isPermaLink="false">http://blog.waltritscher.com/index.php/2009/08/31/powershell-searching-content-of-files/</guid>
		<description><![CDATA[There is a way to use Powershell to search the contents of a file.&#160; This method will not use the Windows index so it will be slow, but it does work.
get-childitem c:\users\ -filter *.txt -recurse &#124;
    select-string -list -pattern &#34;yourtext&#34; &#124; foreach {$_.Path}
Finding files

get-childitem: Get the children for a container.&#160; In this [...]]]></description>
			<content:encoded><![CDATA[<p>There is a way to use Powershell to search the contents of a file.&#160; This method will not use the Windows index so it will be slow, but it does work.</p>
<pre class="code">get-childitem c:\users\ -filter *.txt -recurse |
    select-s<span style="color: #2b91af">tring </span>-list -pattern <span style="color: #a31515">&quot;yourtext&quot; </span>| <span style="color: blue">foreach </span>{$_.Path}</pre>
<h3>Finding files</h3>
<ul>
<li><strong>get-childitem</strong>: Get the children for a container.&#160; In this example the container is a folder on the file system.</li>
<ul>
<li>The first argument is the directory to search (c:\users).</li>
<li>The –filter switch is used to limit what files to search, in this example it will search files with a txt extension.</li>
<li>Process all sub-directories with the –recurse switch.</li>
</ul>
<li><strong>select-string</strong>: Find text in strings or files.</li>
<ul>
<li>The –list switch stops the search within the source once the match is found.&#160; In other words it will not waste time looking for other occurrences of the text.</li>
<li>The –pattern switch is where you specify the search text.&#160; Regex is permitted.</li>
</ul>
<li><strong>foreach</strong>:&#160; Iterate the resulting files.</li>
<li><strong>$_.Path</strong>:&#160; Output the full path for the file.</li>
</ul>
<p>&#160;</p>
</p>
<p><a href="http://11011.net/software/vspaste"></a></p>
<!-- Easy AdSense V2.41 -->
<!-- Post[count: 2] -->
<div class="ezAdsense adsense adsense-leadout" style="float:left;margin:12px; "><script type="text/javascript"><!--
google_ad_client = "pub-7194001785119580";
google_ad_width = 300;
google_ad_height = 250;
google_ad_format = "300x250_as";
google_ad_channel ="";
google_color_border = "FDFFCA";
google_color_bg = "FDFFCA";
google_color_link = "0000CC";
google_color_url = "008000";
google_color_text = "000000";
//--></script>
<script type="text/javascript"
  src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> 
</script><br>
</div>]]></content:encoded>
			<wfw:commentRss>http://blog.waltritscher.com/index.php/2009/08/31/powershell-searching-content-of-files/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Powershell &#8211; Find files within a Date Range</title>
		<link>http://blog.waltritscher.com/index.php/2009/08/30/powershell-find-files-within-a-date-range/</link>
		<comments>http://blog.waltritscher.com/index.php/2009/08/30/powershell-find-files-within-a-date-range/#comments</comments>
		<pubDate>Sun, 30 Aug 2009 09:35:23 +0000</pubDate>
		<dc:creator>Walt Ritscher</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[Powershell]]></category>

		<guid isPermaLink="false">http://blog.waltritscher.com/index.php/2009/08/30/powershell-find-files-within-a-date-range/</guid>
		<description><![CDATA[I needed to find a file that was created in March 2009.&#160; The folder isn&#8217;t indexed so I created this PowerShell script to help find the files within a specified date range.
&#160;
childitem -filter *.doc? -recurse &#124;
    where {$_.CreationTime -gt
    [datetime]::parse(&#34;03/01/2009&#34;) -and
  $_.CreationTime -lt
    [datetime]::parse(&#34;03/31/2009&#34;) -and
 [...]]]></description>
			<content:encoded><![CDATA[<p>I needed to find a file that was created in March 2009.&#160; The folder isn&#8217;t indexed so I created this PowerShell script to help find the files within a specified date range.</p>
<p>&#160;</p>
<pre class="code">childitem -filter *.doc? -recurse |
    where {$_.CreationTime -gt
    [datetime]::parse(<span style="color: #a31515">&quot;03/01/2009&quot;</span>) -and
  $_.CreationTime -lt
    [datetime]::parse(<span style="color: #a31515">&quot;03/31/2009&quot;</span>) -and
        $_.length -gt 50}</pre>
<p><a href="http://11011.net/software/vspaste"></a><a href="http://11011.net/software/vspaste"></a></p>
<p>&#160;</p>
<p>The first line recursively finds all files with a doc or docx extension.</p>
<pre class="code">childitem -filter *.doc? -recurse | </pre>
<p><a href="http://11011.net/software/vspaste"></a></p>
<p>Lines 2-3 look for a file with a creation time greater than (-gt) March 1st 2009.</p>
<pre class="code">where {$_.CreationTime -gt
[datetime]::parse(<span style="color: #a31515">&quot;03/01/2009&quot;</span>) -and </pre>
<p>Lines 4-5 look for a file with a creation time less than (-lt)&#160; March 31st 2009.</p>
<pre class="code">$_.CreationTime -lt
  [datetime]::parse(<span style="color: #a31515">&quot;03/31/2009&quot;</span>) -and </pre>
<p>And the final line looks for files larger that 50 bytes.</p>
<pre class="code">$_.length -gt 50}</pre>
<p><a href="http://11011.net/software/vspaste"></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.waltritscher.com/index.php/2009/08/30/powershell-find-files-within-a-date-range/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Changing Blog Servers for &#8216;Thinking about Code&#8217; site</title>
		<link>http://blog.waltritscher.com/index.php/2009/04/21/changing-blog-servers-for-thinking-about-code-site/</link>
		<comments>http://blog.waltritscher.com/index.php/2009/04/21/changing-blog-servers-for-thinking-about-code-site/#comments</comments>
		<pubDate>Wed, 22 Apr 2009 05:33:12 +0000</pubDate>
		<dc:creator>Walt Ritscher</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://64.85.11.8/wordpress_waltritscher/index.php/2009/04/21/changing-blog-servers-for-thinking-about-code-site/</guid>
		<description><![CDATA[In my opinion writing about the blogging and blogging software makes for dull reading.&#160;&#160; The only people that are interested are fellow bloggers.&#160;&#160; Having said that I do want to write about changing my blog server however because it is likely to affect incoming links.
This site has been running for over five years on the [...]]]></description>
			<content:encoded><![CDATA[<p>In my opinion writing about the blogging and blogging software makes for dull reading.&#160;&#160; The only people that are interested are fellow bloggers.&#160;&#160; Having said that I do want to write about changing my blog server however because it is likely to affect incoming links.</p>
<p>This site has been running for over five years on the .Text blogging platform.&#160; .Text was abandoned years ago and has suffered from lack of attention.&#160; I&#8217;ve delayed moving to new software because I knew it would take a lot of time to get it done correctly.&#160; This month we moved all of our websites to a new server so it was time, Anyway the move is done and the site is now happily running on WordPress.</p>
<p>I have tried to anticipate any changes to post URLs and have URL rewriting enabled.&#160; </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.waltritscher.com/index.php/2009/04/21/changing-blog-servers-for-thinking-about-code-site/feed/</wfw:commentRss>
		</item>
		<item>
		<title>My New WPF blog and site</title>
		<link>http://blog.waltritscher.com/index.php/2007/01/01/my-new-wpf-blog-and-site/</link>
		<comments>http://blog.waltritscher.com/index.php/2007/01/01/my-new-wpf-blog-and-site/#comments</comments>
		<pubDate>Mon, 01 Jan 2007 23:55:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://waltritscher.com/blog/ramblings/archive/2007/01/01/1323.aspx</guid>
		<description><![CDATA[2007 is going to the year of WPF for me.&#160;&#160; I&#8217;ve got a lot of projects pending, I&#8217;ll tell you more about them as I get the details worked out.&#160;&#160; But&#160; I can tell you this&#8230;.
I started a new blog at wpfwonderland.wordpress.com that&#8217;s dedicated to WPF topics.&#160; I&#8217;ll have a companion website up and running [...]]]></description>
			<content:encoded><![CDATA[<p>2007 is going to the year of WPF for me.&nbsp;&nbsp; I&#8217;ve got a lot of projects pending, I&#8217;ll tell you more about them as I get the details worked out.&nbsp;&nbsp; But&nbsp; I can tell you this&#8230;.</p>
<p>I started a new blog at <a href="http://wpfwonderland.wordpress.com/">wpfwonderland.wordpress.com </a>that&#8217;s dedicated to WPF topics.&nbsp; I&#8217;ll have a companion website up and running sometime this month too.(<a href="http://www.wpfwonderland.com">www.wpfwonderland.com</a> )</p>
<p>Please check it out.&nbsp; I&#8217;m really excited about WPF.&nbsp; Can&#8217;t wait to talk to you about all the cool bits.</p>
<p>Walt</p>
<p><img src ="http://waltritscher.com/blog/ramblings/aggbug/1323.aspx" width = "1" height = "1" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.waltritscher.com/index.php/2007/01/01/my-new-wpf-blog-and-site/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Visual Studio 2005 SP1 is Released</title>
		<link>http://blog.waltritscher.com/index.php/2006/12/15/visual-studio-2005-sp1-is-released/</link>
		<comments>http://blog.waltritscher.com/index.php/2006/12/15/visual-studio-2005-sp1-is-released/#comments</comments>
		<pubDate>Fri, 15 Dec 2006 08:51:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://waltritscher.com/blog/ramblings/archive/2006/12/15/1287.aspx</guid>
		<description><![CDATA[Hooray! Microsoft released the service packs for Visual Studio today.&#160; These are a MUST INSTALL for anyone using VS.&#160; There are plenty of bug fixes.&#160; The two that I&#8217;m most excited about are the Visual Basic background compiler fix and the performance fix for compiling large projects.&#160; Both of these issues have slowed my daily [...]]]></description>
			<content:encoded><![CDATA[<p>Hooray! Microsoft <a href="http://msdn.microsoft.com/vstudio/support/vs2005sp1/">released the service packs</a> for Visual Studio today.&nbsp; These are a MUST INSTALL for anyone using VS.&nbsp; There are plenty of bug fixes.&nbsp; The two that I&#8217;m most excited about are the Visual Basic background compiler fix and the performance fix for compiling large projects.&nbsp; Both of these issues have slowed my daily development consistently during the last year.</p>
<p>If you are an ASP.NET developer you&#8217;ll be happy that the Web Deployment and Web Application projects are now included.</p>
<p>Microsoft has added some interesting new features in the SP too.</p>
<ul>
<li>Multicore support for profiling</li>
<li>Multicore support for code gen</li>
<li>Team Server&nbsp;performance improvements</li>
<li>See the Microsoft website <a href="http://msdn.microsoft.com/vstudio/support/vs2005sp1/">for more details</a></li>
</ul>
<p>There are several version of the SP. Pick the one that matches your version of Visual Studio.</p>
<ul type=disc>
<li class=MsoNormal style="MARGIN: 0in 0in 0pt; COLOR: black; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in"><a title=http://www.microsoft.com/downloads/details.aspx?FamilyId=BB4A75AB-E2D4-4C96-B39D-37BAF6B5B1DC href="http://www.microsoft.com/downloads/details.aspx?FamilyId=BB4A75AB-E2D4-4C96-B39D-37BAF6B5B1DC">Visual Studio 2005 Team Suite SP1</a> (includes SP1 updates for Standard, Professional, and Team Editions of Visual Studio 2005)<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o:p></li>
<li class=MsoNormal style="MARGIN: 0in 0in 0pt; COLOR: black; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in"><a title=http://www.microsoft.com/downloads/details.aspx?FamilyId=A9AB638C-04D2-4AEE-8AE8-9F00DD454AB8 href="http://www.microsoft.com/downloads/details.aspx?FamilyId=A9AB638C-04D2-4AEE-8AE8-9F00DD454AB8">Visual Studio 2005 Team Foundation Server SP1</a><o:p></o:p></li>
<li class=MsoNormal style="MARGIN: 0in 0in 0pt; COLOR: black; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in"><a title=http://www.microsoft.com/downloads/details.aspx?FamilyId=7B0B0339-613A-46E6-AB4D-080D4D4A8C4E href="http://www.microsoft.com/downloads/details.aspx?FamilyId=7B0B0339-613A-46E6-AB4D-080D4D4A8C4E">Visual Studio 2005 Express Editions SP1</a><o:p></o:p></li>
<li class=MsoNormal style="MARGIN: 0in 0in 0pt; COLOR: black; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in"><a title=http://www.microsoft.com/downloads/details.aspx?FamilyId=FB6BB56A-10B7-4C05-B81C-5863284503CF href="http://www.microsoft.com/downloads/details.aspx?FamilyId=FB6BB56A-10B7-4C05-B81C-5863284503CF">Visual Studio 2005 SP1 Update for Windows Vista Beta</a></li>
</ul>
<p class=MsoNormal style="MARGIN: 0in 0in 0pt; COLOR: black; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in">Seriously, if you are using Visual Studio 2005 you should install this SP as soon as possible.</p>
<p class=MsoNormal style="MARGIN: 0in 0in 0pt; COLOR: black; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto; mso-list: l0 level1 lfo1; tab-stops: list .5in">&nbsp;</p>
<p><img src ="http://waltritscher.com/blog/ramblings/aggbug/1287.aspx" width = "1" height = "1" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.waltritscher.com/index.php/2006/12/15/visual-studio-2005-sp1-is-released/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Is this for real? - Free copy of Windows Vista and Office 2007 from Microsoft</title>
		<link>http://blog.waltritscher.com/index.php/2006/11/27/is-this-for-real-free-copy-of-windows-vista-and-office-2007-from-microsoft/</link>
		<comments>http://blog.waltritscher.com/index.php/2006/11/27/is-this-for-real-free-copy-of-windows-vista-and-office-2007-from-microsoft/#comments</comments>
		<pubDate>Tue, 28 Nov 2006 00:25:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://waltritscher.com/blog/ramblings/archive/2006/11/28/1105.aspx</guid>
		<description><![CDATA[Would you like a free copy of Windows Vista?&#160; You have to spend a few hours looking at some webcasts and fill out some information.&#160; Doesn&#8217;t seem like much work for $300 worth of software.
Wait, there&#8217;s more.&#160; A free copy of Office 2007 Pro ($500) if you watch some marketing videos for Office.&#160; So far [...]]]></description>
			<content:encoded><![CDATA[<p>Would you <a href="http://www.powertogether.com/#">like a free copy</a> of Windows Vista?&nbsp; You have to spend a few hours looking at some webcasts and fill out some information.&nbsp; Doesn&#8217;t seem like much work for $300 worth of software.</p>
<p>Wait, there&#8217;s more.&nbsp; A <a href="http://www.powertogether.com/#">free copy</a> of Office 2007 Pro ($500) if you watch some marketing videos for Office.&nbsp; So far I haven&#8217;t seen the catch, unless it&#8217;s a fake site.</p>
<p>I don&#8217;t understand the reasoning behind the offer or <a href="http://www.youtube.com/watch?v=-SZzAT-S5DQ">the odd marketing videos</a> on YouTube.com but do you care?&nbsp; Nah, it free.&nbsp; If you haven&#8217;t tried Vista you really should.&nbsp;&nbsp;This just makes it easier.<font color=#800080>&nbsp;&nbsp; </font></p>
<p>Offer expires the end of February 2007</p>
<p><strong>Legal description below</strong></p>
<blockquote dir=ltr style="MARGIN-RIGHT: 0px">
<ul>
<li><em>The Power Together Campaign consists of two (2) offers, the Windows Vista Business Offer and the Microsoft Office Professional 2007 Offer, and is open only to legal residents of the 50 United States (includes District of Columbia) 18 years of age or older. </em></li>
<li><em>You are not eligible to receive these offers if you or your employer is a participant in the Microsoft Partner Program or the Microsoft Developer Network. </em></li>
<li><em>To be eligible to receive Windows Vista Business, you must register at www.powertogether.com and participate in at least three (3) qualifying web casts and/or virtual lab sessions within 30 days of registration. </em></li>
<li><em>To be eligible to receive Microsoft Office Professional 2007, you must register at www.powertogether.com and participate in at least three (3) qualifying web casts and/or virtual lab sessions within 30 days of registration. </em></li>
<li><em>In order to register at www.powertogether.com, you may be asked to provide personal information including name, telephone, and address. All personal information gathered during registration will be subject to Microsoft&#8217;s privacy policy. </em></li>
<li><em>Limit one gift per person per Offer. </em></li>
<li><em>These offers are non-transferable. </em></li>
<li><em>These offers expire on February 28, 2007, or while supplies last, and are not redeemable for cash. </em></li>
<li><em>Taxes, if any, are the sole responsibility of the recipient. If you are eligible for and register to receive both gifts, you must complete a W-9 (Request for Taxpayer Identification Number and Certification) form prior to receipt of the second gift. </em></li>
<li><em>Any gift returned as non-deliverable will not be re-sent. Please allow 6 - 8 weeks for shipment of your gift(s).</em></li>
</ul>
<p><em></em>&nbsp;</p>
<ul>
<li><em>Government Customers: Microsoft intends that use of the services and products offered as part of this promotion comply with applicable federal, state, provincial, and local government gift and ethics rules. </em></li>
<li><em>If you are a government employee (including an employee of a public education institution), these services and products may be used for evaluation purposes only, solely for the benefit of your agency or institution, and not for the personal use or benefit of any individual. </em></li>
<li><em>You should consult with your agency or institution counsel or ethics officer prior to use of these services or products. You may return the products to Microsoft at its expense.</em></li>
</ul>
</blockquote>
<p><img src ="http://waltritscher.com/blog/ramblings/aggbug/1105.aspx" width = "1" height = "1" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.waltritscher.com/index.php/2006/11/27/is-this-for-real-free-copy-of-windows-vista-and-office-2007-from-microsoft/feed/</wfw:commentRss>
		</item>
		<item>
		<title>What&#8217;s different in Office 2007?</title>
		<link>http://blog.waltritscher.com/index.php/2006/11/25/whats-different-in-office-2007/</link>
		<comments>http://blog.waltritscher.com/index.php/2006/11/25/whats-different-in-office-2007/#comments</comments>
		<pubDate>Sat, 25 Nov 2006 16:24:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://waltritscher.com/blog/ramblings/archive/2006/11/25/1101.aspx</guid>
		<description><![CDATA[I installed Office 2007 a couple weeks ago.&#160; Sorry, I&#8217;m not going to call it by its new name (2007 Office System).&#160; That name seems backwards to me.
If you are using Office 2007 you&#8217;ve undoubtedly said &#8220;where did they&#160;put that?&#8217; a time or two.&#160;Tech-Net has a&#160;nice&#160;overview of all the changes you&#8217;ll need to learn.&#160;

]]></description>
			<content:encoded><![CDATA[<p>I installed Office 2007 a couple weeks ago.&nbsp; Sorry, I&#8217;m not going to call it by its new name (2007 Office System).&nbsp; That name seems backwards to me.</p>
<p>If you are using Office 2007 you&#8217;ve undoubtedly said &#8220;where did they&nbsp;put that?&#8217; a time or two.&nbsp;Tech-Net <a href="http://tinyurl.com/yjyrhf">has a&nbsp;nice&nbsp;overview</a> of all the changes you&#8217;ll need to learn.&nbsp;</p>
<p><img src ="http://waltritscher.com/blog/ramblings/aggbug/1101.aspx" width = "1" height = "1" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.waltritscher.com/index.php/2006/11/25/whats-different-in-office-2007/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Vast Library of Data Models Available for Free</title>
		<link>http://blog.waltritscher.com/index.php/2006/07/07/vast-library-of-data-models-available-for-free/</link>
		<comments>http://blog.waltritscher.com/index.php/2006/07/07/vast-library-of-data-models-available-for-free/#comments</comments>
		<pubDate>Sat, 08 Jul 2006 04:46:00 +0000</pubDate>
		<dc:creator>Walt Ritscher</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://64.85.11.8/wordpress_waltritscher/index.php/2006/07/07/vast-library-of-data-models-available-for-free/</guid>
		<description><![CDATA[We all have our strengths and weaknesses when it comes to developing software.&#160;&#160; It&#8217;s widely known, for instance, that most developers are crummy at UI design or making their application look good. Some programmers, on the other hand, are really good at data structures and normalizing data for relational databases.&#160; I worked on a project [...]]]></description>
			<content:encoded><![CDATA[<p>We all have our strengths and weaknesses when it comes to developing software.&#160;&#160; It&#8217;s widely known, for instance, that most developers are crummy at UI design or making their application look good. Some programmers, on the other hand, are really good at data structures and normalizing data for relational databases.&#160; I worked on a project this year with a fellow who could instantly see the way complex data should be represented in the data model.&#160;&#160; I have to think about it much longer, and even then I&#8217;m sometimes not sure if I&#8217;ve picked the best approach.&#160; Guess which one of us did most of the database design work?</p>
<p><strong>Other peoples work</strong></p>
<p>Looking at another programmers source code can be educational.&#160; Reading an existing database schema can also be helpful.&#160; <a href="http://www.databaseanswers.org/index.htm">Barry Williams</a> has a huge library of free database schemas for you to look at.&#160; Over <a href="http://www.databaseanswers.org/data_models/">300 sample databases</a> in all.</p>
<p><strong>Examples</strong></p>
<ul>
<li>Payrolls </li>
<li>Permits and Licenses </li>
<li>Car Dealership </li>
<li>Real Estate Rentals </li>
<li>Global Law Firm </li>
<li>City Tourist Guide </li>
<li>Data Warehouses </li>
<li>Law Enforcement - Case Management </li>
<li>Landscape Gardening</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.waltritscher.com/index.php/2006/07/07/vast-library-of-data-models-available-for-free/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Stock Photos - Inexpensive Licensing for Your Web Sites</title>
		<link>http://blog.waltritscher.com/index.php/2006/05/28/stock-photos-inexpensive-licensing-for-your-web-sites/</link>
		<comments>http://blog.waltritscher.com/index.php/2006/05/28/stock-photos-inexpensive-licensing-for-your-web-sites/#comments</comments>
		<pubDate>Mon, 29 May 2006 05:05:00 +0000</pubDate>
		<dc:creator>Walt Ritscher</dc:creator>
		
		<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://64.85.11.8/wordpress_waltritscher/index.php/2006/05/28/stock-photos-inexpensive-licensing-for-your-web-sites/</guid>
		<description><![CDATA[
You need a picture or two for your next project mock-up.&#160; 
You need it now. 
You don&#8217;t want to pay a lot, it&#8217;s only a mock-up!

There are several websites that will sell you a nice, high-resolution image for cheap.&#160;&#160; Today&#8217;s find:
http://www.dreamstime.com/
Web licensing for as low as $0.74 per picture.&#160;&#160; They also give you seven free [...]]]></description>
			<content:encoded><![CDATA[<ul>
<li>You need a picture or two for your next project mock-up.&#160; </li>
<li>You need it now. </li>
<li>You don&#8217;t want to pay a lot, it&#8217;s only a mock-up!</li>
</ul>
<p>There are several websites that will sell you a nice, high-resolution image for cheap.&#160;&#160; Today&#8217;s find:</p>
<p><a href="http://www.dreamstime.com/">http://www.dreamstime.com/</a></p>
<p>Web licensing for as low as $0.74 per picture.&#160;&#160; They also give you seven free pictures every week.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.waltritscher.com/index.php/2006/05/28/stock-photos-inexpensive-licensing-for-your-web-sites/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Tip: ASP.NET 2.0 Treeview - Expanding Nodes when Bound to SiteMap</title>
		<link>http://blog.waltritscher.com/index.php/2006/05/18/tip-aspnet-20-treeview-expanding-nodes-when-bound-to-sitemap/</link>
		<comments>http://blog.waltritscher.com/index.php/2006/05/18/tip-aspnet-20-treeview-expanding-nodes-when-bound-to-sitemap/#comments</comments>
		<pubDate>Fri, 19 May 2006 05:32:00 +0000</pubDate>
		<dc:creator>Walt Ritscher</dc:creator>
		
		<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://64.85.11.8/wordpress_waltritscher/index.php/2006/05/18/tip-aspnet-20-treeview-expanding-nodes-when-bound-to-sitemap/</guid>
		<description><![CDATA[The new ASP.NET 2.0 TreeView control is pretty handy.&#160; It can function as a normal treeview - where you can add/remove treenodes to the nodes collection. It can also serve as a site navigation tree.&#160; In this mode each node on the tree becomes a hyperlink to another webpage.&#160; The hyperlink gets its Href from [...]]]></description>
			<content:encoded><![CDATA[<p>The new ASP.NET 2.0 TreeView control is pretty handy.&#160; It can function as a normal treeview - where you can add/remove treenodes to the nodes collection. It can also serve as a site navigation tree.&#160; In this mode each node on the tree becomes a hyperlink to another webpage.&#160; The hyperlink gets its Href from the treenodes NavigationUrl property which in turn gets its Url from the web.sitemap file.</p>
<p>Today I finally solved one of the annoying dilemmas that crops up when using the Treeview.</p>
<p><strong>The problem</strong></p>
<p>A treenode can be selected or expanded.&#160; <strong>Selecting</strong> the node causes the SelectedNodeChange event to fire if the Treeview is configured correctly.&#160; Clicking the + icon on a node causes the TreeNodeExpanded event to fire.&#160; The selected event will not fire if the node is in Navigation mode.&#160;&#160;&#160; This behavior makes sense most of the time.&#160; The node is acting&#160; as a navigation link&#160; - it causes the browser to take you to a new page which means there is no postback.&#160; Your are going to a new page, without returning to the server first.</p>
<p>If the node has its NavigationUrl property set to an empty string, the node is in <strong>Selection</strong> mode.&#160; If the NavigationUrl is a non-zero length string ,the node is in <strong>Navigation</strong> mode.</p>
<p>For our project I wanted the children nodes to expand whenever the user selects a parent node.&#160; Yes, the user can click the + symbol to expand it,&#160; but our testing showed that many users expect the node to expand by clicking the node text instead. Since the nodes are in Navigation mode I couldn&#8217;t&#160; put the code in the SelectedNodeChanged event.</p>
<p>My solution?&#160; Use the TreeNodeDatabound event to examine each node as it is being bound to the tree.&#160; If the current page URL matches the treenode NavigationUrl I expand all the of the current nodes children.&#160; It solves my problem.&#160; It still doesn&#8217;t cause the SelectedNodeChanged to fire so it may not solve all your troubles. At least it&#8217;s a start.</p>
<p>Protected Sub treeMainMenu_TreeNodeDataBound _   <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (ByVal sender As Object, _&#160; <br />ByVal e As System.Web.UI.WebControls.TreeNodeEventArgs) _    <br />Handles treeMainMenu.TreeNodeDataBound    <br />&#8216; other binding code here&#8230;    <br />If Request.Url.PathAndQuery = e.Node.NavigateUrl Then    <br />e.Node.ExpandAll()    <br />End If    <br /> End Sub</p>
<p>&#160;</p>
<p><strong>Comments</strong></p>
<p>7/7/2006 9:04 AM <a>EAI</a></p>
<p>Your code helped me indirectly. Thanks a lot.    <br /><a href="http://waltritscher.com/"></a></p>
<p> 7/8/2006 1:20 PM <a href="http://not yet/">Martin</a></p>
<p>Thanks you code also helped me indirectly.    <br />Saved quite some time.     <br /><a href="http://waltritscher.com/"></a></p>
<p>Selection vs Navigation 7/19/2006 10:07 AM <a>Alejandro Cifuentes</a></p>
<p>Thank you very much for your tips. I have made a change to your code. I need that a navigation node shows as an hyperlink, to expand the lower ones, so i modified the code to:    <br />If e.Node.NavigateUrl = &quot;&quot; Then     <br />e.Node.SelectAction = TreeNodeSelectAction.Expand     <br />End If     <br />Best regards,     <br />Alejandro.     <br /><a href="http://waltritscher.com/"></a></p>
<p>8/17/2006 11:10 AM <a>Andy</a></p>
<p>I used you code (thanks alot) and got this working in a demo project, but the more I played around with firing different events ans setting databindings &#8230; eventually it stopped working. No I cannot get it to work again. The TreeNodeDataBound event fires, and the call to expandAll() runs, but it does not expand. There seems to be a bunch of different properties in this control that force other properties to change to thier default, irrespective of what you set.    <br />For example setting populateondemand in the databindings     <br />like     <br />&lt;DataBindings&gt;     <br />&lt;asp:TreeNodeBinding PopulateOnDemand=true     <br />TextField=&quot;Title&quot; NavigateUrlField=&quot;URL&quot; /&gt;     <br />(<a href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/CustSiteMap.asp">http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnaspp/html/CustSiteMap.asp</a>)     <br />or setting it in code in the TreeNodeDataBound event does not work.. must be overriden by another setting.     <br />Anyone else experience this.     <br /><a href="http://waltritscher.com/"></a></p>
<p> 8/17/2006 11:31 AM <a>Andy</a></p>
<p>Here is my code which no longer works. Where the TreeNodeDataBound event fires, and the call to expandAll() runs, but it does not expand.    <br />&lt;asp:TreeView ID=&quot;TreeView1&quot; runat=&quot;server&quot; DataSourceID=&quot;SiteMapDataSource1&quot; ExpandDepth=&quot;1&quot;     <br />OnTreeNodeDataBound=&quot;TreeView1_TreeNodeDataBound&quot;&gt;     <br />&lt;/asp:TreeView&gt;     <br />protected void TreeView1_TreeNodeDataBound(object sender, System.Web.UI.WebControls.TreeNodeEventArgs e) {     <br />if (Request.Url.PathAndQuery == e.Node.NavigateUrl) e.Node.ExpandAll();     <br />}     <br /><a href="http://waltritscher.com/"></a></p>
<p> 8/17/2006 11:39 AM <a>Andy</a></p>
<p>ok I remember I need PopulateNodesFromClient=&quot;false&quot; in order to get the click on the text to navigate and expand.    <br />&lt;asp:TreeView ID=&quot;TreeView1&quot; runat=&quot;server&quot; DataSourceID=&quot;SiteMapDataSource1&quot; ExpandDepth=&quot;1&quot;     <br />OnTreeNodeDataBound=&quot;TreeView1_TreeNodeDataBound&quot; PopulateNodesFromClient=&quot;false&quot;&gt;     <br />&lt;/asp:TreeView&gt;     <br /><a href="http://waltritscher.com/"></a></p>
<p> 8/18/2006 10:42 AM <a>Wendy</a></p>
<p>Thank You!! I have been searching for 2 days and have found tons of code but nothing that did exactly what I needed it to. This was just what I was looking for. Thanks a ton&#8230; </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.waltritscher.com/index.php/2006/05/18/tip-aspnet-20-treeview-expanding-nodes-when-bound-to-sitemap/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
