<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:media="http://search.yahoo.com/mrss/"><channel><title>Official Blog of Will Strohl</title><link>http://www.willstrohl.com/Blog</link><item><title>Telerik Insider Program</title><link>http://www.willstrohl.com/Blog/PostId/638/Telerik-Insider-Program</link><summary>&amp;lt;p&amp;gt;There has been a program offered by &amp;lt;a href=&amp;quot;http://www.telerik.com&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;Telerik&amp;lt;/a&amp;gt; for some time now, where they will sponsor speakers to give presentations to user groups and code camps.&amp;amp;nbsp; This was partially an effort to further ensure the quality and existence of user groups since they saw a decline in user group activity in 2008.&amp;amp;nbsp; The list was never very long, but until now, I didn&amp;amp;rsquo;t realize how short the list really is.&amp;amp;nbsp; &amp;lt;a href=&amp;quot;http://www.telerik.com&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;Telerik&amp;lt;/a&amp;gt; announced their &amp;lt;a href=&amp;quot;http://www.telerik.com/community/insiders.aspx&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;Insiders Program&amp;lt;/a&amp;gt; today. &amp;lt;/p&amp;gt;
&amp;lt;p&amp;gt;&amp;lt;a href=&amp;quot;http://www.telerik.com/community/insiders.aspx&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;&amp;lt;img style=&amp;quot;border:0px;background-image: none;       padding-left: 0px; padding-right: 0px; display: inline;       padding-top: 0px;&amp;quot; title=&amp;quot;tekeik-insiders-header&amp;quot; alt=&amp;quot;tekeik-insiders-header&amp;quot; src=&amp;quot;/Portals/1/Blog/Files/1/681/Windows-Live-Writer-Telerik-Insider_CD64-tekeik-insiders-header_24f01582-36b7-405a-ac01-2ebf713ea068.png&amp;quot; width=&amp;quot;497&amp;quot; height=&amp;quot;34&amp;quot; /&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;/p&amp;gt;</summary><category>DotNetNuke,Technology,ASP.Net</category><pubDate>Mon, 04 Apr 2011 08:00:00 GMT</pubDate><description>&lt;p&gt;There has been a program offered by &lt;a href="http://www.telerik.com" target="_blank"&gt;Telerik&lt;/a&gt; for some time now, where they will sponsor speakers to give presentations to user groups and code camps.&amp;nbsp; This was partially an effort to further ensure the quality and existence of user groups since they saw a decline in user group activity in 2008.&amp;nbsp; The list was never very long, but until now, I didn&amp;rsquo;t realize how short the list really is.&amp;nbsp; &lt;a href="http://www.telerik.com" target="_blank"&gt;Telerik&lt;/a&gt; announced their &lt;a href="http://www.telerik.com/community/insiders.aspx" target="_blank"&gt;Insiders Program&lt;/a&gt; today. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.telerik.com/community/insiders.aspx" target="_blank"&gt;&lt;img style="background-image: none;  padding-left: 0px; padding-right: 0px; display: inline;    padding-top: 0px;    border-width: 0px;border-style: solid;" title="Telerik Insiders" alt="Telerik Insiders" src="/Portals/1/Blog/Files/1/681/Windows-Live-Writer-Telerik-Insider_CD64-tekeik-insiders-header_9297a060-9528-41c7-81ce-0c9f6fb1dfc5.png" width="497" height="34" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The program lists several top-notch speakers who are available to speak at various community events, their bio and abstracts (when available), and any events that they&amp;rsquo;re already scheduled to speak at.&amp;nbsp; I am very proud and honored to say that I an in their list of insiders.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.telerik.com/community/insiders.aspx" target="_blank"&gt;&lt;img style="background-image: none;  padding-left: 0px; padding-right: 0px; display: inline;    padding-top: 0px;    border-width: 0px;border-style: solid;" title="Telerik Insider Program Home Page" alt="Telerik Insider Program Home Page" src="/Portals/1/Blog/Files/1/681/Windows-Live-Writer-Telerik-Insider_CD64-telerik-insider-program-home-page_05120e9d-7415-4a68-8b39-fc47b7f34113.png" width="504" height="316" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;When I was originally tapped to be in this program, I was concerned since my primary topic of choice tends to be &lt;a href="http://www.dotnetnuke.com" target="_blank"&gt;DotNetNuke&lt;/a&gt;, but they are completely understanding and accepting of the various talents and passions that their &lt;em&gt;&lt;a href="http://www.telerik.com/community/insiders.aspx" target="_blank"&gt;insiders&lt;/a&gt;&lt;/em&gt; have.&lt;/p&gt;
&lt;p&gt;You don&amp;rsquo;t see my list of abstracts on my bio page there right now, but you will in the future.&amp;nbsp; Some of the other &lt;a href="http://www.telerik.com/community/insiders.aspx" target="_blank"&gt;insiders&lt;/a&gt; already have abstracts and appearances listed to make it easy for you to see the availability and specialty of each presenter.&lt;/p&gt;
&lt;p&gt;While it&amp;rsquo;s great to boast about something like this because of how exclusive it appears to be, I cannot honestly sit here and do that without acknowledging that I didn&amp;rsquo;t make it to this list all on my own.&amp;nbsp; Like many of you, I&amp;rsquo;ve had mentors and a strong family to back my journey up and get me to where I am today.&amp;nbsp; With readers, supporters, user group members, community leaders, and others &amp;ndash; I couldn&amp;rsquo;t accept this exceptional honor to be a &lt;a href="http://www.telerik.com/community/insiders.aspx" target="_blank"&gt;Telerik Insider&lt;/a&gt;!&lt;/p&gt;
&lt;div style="padding-bottom: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px;" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:100976ed-0989-44df-8405-dbfb51fc9431" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Telerik" rel="tag"&gt;Telerik&lt;/a&gt;,&lt;a href="http://technorati.com/tags/DNN" rel="tag"&gt;DNN&lt;/a&gt;,&lt;a href="http://technorati.com/tags/DotNetNuke" rel="tag"&gt;DotNetNuke&lt;/a&gt;,&lt;a href="http://technorati.com/tags/CMS" rel="tag"&gt;CMS&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Content+Management" rel="tag"&gt;Content Management&lt;/a&gt;,&lt;a href="http://technorati.com/tags/WCMS" rel="tag"&gt;WCMS&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Presentations" rel="tag"&gt;Presentations&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Community" rel="tag"&gt;Community&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Use jQueryPad For Your jQuery Editor</title><link>http://www.willstrohl.com/Blog/PostId/628/Use-jQueryPad-For-Your-jQuery-Editor</link><summary>&amp;lt;p&amp;gt;&amp;lt;img style=&amp;quot;border:0px;background-image: none;       padding-left: 0px; padding-right: 0px; display: inline;       padding-top: 0px;&amp;quot; title=&amp;quot;jquerypad-screen-shot&amp;quot; alt=&amp;quot;jquerypad-screen-shot&amp;quot; src=&amp;quot;/Portals/1/Blog/Files/1/671/Windows-Live-Writer-jQueryPad_9E38-jquerypad-screen-shot_dace7712-25fa-4aab-8cfd-c4175b9a78f4.jpg&amp;quot; width=&amp;quot;500&amp;quot; height=&amp;quot;304&amp;quot; /&amp;gt;&amp;lt;/p&amp;gt;
&amp;lt;p&amp;gt;This will be a quick post.&amp;amp;nbsp; I just wanted to let all of my readers know about a tool that &amp;lt;a href=&amp;quot;http://weblogs.asp.net/rchartier/&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;Rob Chartier&amp;lt;/a&amp;gt; found today.&amp;amp;nbsp; It&amp;amp;rsquo;s called &amp;lt;a href=&amp;quot;http://www.paulstovell.com/jquerypad&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;jQueryPad&amp;lt;/a&amp;gt;.&amp;amp;nbsp; This is an editor built specifically for &amp;lt;a href=&amp;quot;http://www.jquery.com&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;jQuery&amp;lt;/a&amp;gt; developers to use to build out any &amp;lt;a href=&amp;quot;http://www.jquery.com&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;jQuery&amp;lt;/a&amp;gt; code that they want.&amp;amp;nbsp; Although I have two specific features on my personal wish list, this tool is outstanding!&amp;lt;/p&amp;gt;</summary><category>Technology,ASP.Net</category><pubDate>Fri, 25 Feb 2011 08:00:00 GMT</pubDate><description>&lt;p&gt;&lt;img style="border:0px;background-image: none;       padding-left: 0px; padding-right: 0px; display: inline;       padding-top: 0px;" title="jquerypad-screen-shot" alt="jquerypad-screen-shot" src="/Portals/1/Blog/Files/1/671/Windows-Live-Writer-jQueryPad_9E38-jquerypad-screen-shot_d16261ae-81f4-48f2-9849-8c455eb81fea.jpg" width="500" height="304" /&gt;&lt;/p&gt;
&lt;p&gt;This will be a quick post.&amp;nbsp; I just wanted to let all of my readers know about a tool that &lt;a href="http://weblogs.asp.net/rchartier/" target="_blank"&gt;Rob Chartier&lt;/a&gt; found today.&amp;nbsp; It&amp;rsquo;s called &lt;a href="http://www.paulstovell.com/jquerypad" target="_blank"&gt;jQueryPad&lt;/a&gt;.&amp;nbsp; This is an editor built specifically for &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; developers to use to build out any &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; code that they want.&amp;nbsp; Although I have two specific features on my personal wish list, this tool is outstanding!&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.paulstovell.com/jquerypad" target="_blank"&gt;jQueryPad&lt;/a&gt; is a free and open source application, written in WPF.&amp;nbsp; As a result, it&amp;rsquo;s only available for Windows, but that shouldn&amp;rsquo;t be a problem to most of my readers.&amp;nbsp; The only downside to how it is distributed is that there isn&amp;rsquo;t an installer for the program.&amp;nbsp; You can put it nearly anywhere on your computer though, and add it as a shortcut to your start menu, or task bar.&lt;/p&gt;
&lt;h2&gt;Features&lt;/h2&gt;
&lt;p&gt;There are several features that will immediately make you happy with the tool:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Able to change the version of &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; used&lt;/li&gt;
    &lt;li&gt;HTML pane to add snippets to run code against&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; editing pane&lt;/li&gt;
    &lt;li&gt;Temporary file saved in memory&lt;/li&gt;
    &lt;li&gt;Ability to open in your installed web browsers&lt;/li&gt;
    &lt;li&gt;Quick running of the code by pressing F5 on your keyboard&lt;/li&gt;
    &lt;li&gt;Integrated tips to help you learn any shortcuts to the program&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Missing Features&lt;/h2&gt;
&lt;p&gt;I really wish that there was an installer for the program.&amp;nbsp; Even though it takes minimal effort to make it usable on your system, this is extra time that should not be necessary.&lt;/p&gt;
&lt;p&gt;There is no intellisense.&amp;nbsp; However, judging by the comments on the download page, this will probably be the most requested feature for a future version.&lt;/p&gt;
&lt;p&gt;If you write any code that throws a JavaScript error, there really isn&amp;rsquo;t any error-handling.&amp;nbsp; It would be very nice to see these errors trapped and bubbled up to have a meaningful UI response for the developer.&lt;/p&gt;
&lt;h3&gt;Conclusion&lt;/h3&gt;
&lt;p&gt;That&amp;rsquo;s about it&amp;hellip;.&amp;nbsp; Overall, I am more than pleased with &lt;a href="http://www.paulstovell.com/jquerypad" target="_blank"&gt;&lt;/a&gt;&lt;a href="http://www.paulstovell.com/jquerypad" target="_blank"&gt;jQueryPad&lt;/a&gt;.&amp;nbsp; I have already begun using it to test how I write &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt;, including with the &lt;a href="http://dnnwidgets.com/" target="_blank"&gt;Widget Suite&lt;/a&gt; for &lt;a href="http://www.dotnetnuke.com" target="_blank"&gt;DotNetNuke&lt;/a&gt;.&lt;/p&gt;
&lt;div style="padding-bottom: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px;" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:07942685-092b-4bf5-846d-d3943e1ad591" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/jQuery" rel="tag"&gt;jQuery&lt;/a&gt;&lt;/div&gt;</description></item><item><title>oEmbed API Wrapper for .Net Released</title><link>http://www.willstrohl.com/Blog/PostId/510/oEmbed-API-Wrapper-for-Net-Released</link><summary /><category>ASP.Net</category><pubDate>Wed, 03 Feb 2010 23:38:00 GMT</pubDate><description>&lt;p&gt;I happened across a REST standard for importing remote content today called &lt;a href="http://www.oembed.com" target="_blank"&gt;oEmbed&lt;/a&gt;.&amp;#160; It uses REST to display embedded content from other websites.&amp;#160; This specific method avoids (but doesn’t get rid of) XSS issues that are experienced with importing content from other websites.&amp;#160; Using either JSON or XML, you make a GET request using the &lt;a href="http://www.oembed.com" target="_blank"&gt;oEmbed&lt;/a&gt; standard, which will return the remote content that you can embed into your own website.&amp;#160; &lt;/p&gt;  &lt;p&gt;There are many ways to do this, but using this method, you can gain a higher level of usability over user-entered content in your own web applications.&amp;#160; For example, imagine your end-user having to add a YouTube video into an online editor.&amp;#160; They’d have to:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Find the video on YouTube &lt;/li&gt;    &lt;li&gt;Copy the embed HTML &lt;/li&gt;    &lt;li&gt;Figure out where and how to paste content into the source of the editor &lt;/li&gt;    &lt;li&gt;Paste the HTML source code into the editor &lt;/li&gt;    &lt;li&gt;Save the content &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;For anyone reading my blog, this is a trivial task that can take less than a minute.&amp;#160; However, the average website visitor will not be able to or be confident enough to go through those seemingly simple steps.&amp;#160; Instead, wouldn’t it be easier to just have them paste the URL of the webpage into the text portion of the editor and just save the content? Of course!&amp;#160; That’s where &lt;a href="http://www.oembed.com" target="_blank"&gt;oEmbed&lt;/a&gt; steps in.&lt;/p&gt;  &lt;p&gt;By implementing &lt;a href="http://www.oembed.com" target="_blank"&gt;oEmbed&lt;/a&gt;, you can just have your visitor paste the YouTube URL into the content area, and save it.&amp;#160; However, you’d use &lt;a href="http://www.oembed.com" target="_blank"&gt;oEmbed&lt;/a&gt; to switch out that URL for the actual content. Turning something like this:&lt;/p&gt;  &lt;p&gt;&lt;font face="Courier New"&gt;http://www.youtube.com/watch?v=u7zlDicbfhI&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;Into this:&lt;/p&gt; &lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/u7zlDicbfhI&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/u7zlDicbfhI&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;  &lt;p&gt;You can find a code sample for this on the &lt;a href="http://oembed.codeplex.com/documentation" target="_blank"&gt;documentation of the oEmbed wrapper for .Net&lt;/a&gt;.&amp;#160; And the best part is that you are not limited to only YouTube.&amp;#160; Using the &lt;a href="http://oembed.codeplex.com" target="_blank"&gt;oEmbed API Wrapper for .Net&lt;/a&gt;, you can do this will various videos, photos, and other embeddable content, such as widgets.&lt;/p&gt;  &lt;p&gt;In this first release, I have given you all of the tools to make this happen in your own web applications:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Concrete implementations for: Clearspring Widgets, Flickr, Hulu, MyOpera, oohEmbed, Poll Everywhere, Qik, Revision3, Viddler, Vimeo, YouTube&lt;/li&gt;    &lt;li&gt;Open implementation to call any other oEmbed provider&lt;/li&gt;    &lt;li&gt;Ability to set an Internet proxy for the REST requests&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://oembed.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=39914" target="_blank"&gt;Download&lt;/a&gt; and try out this for yourself.&amp;#160; I’d love to get your feedback.&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:d2c7289a-f2a1-4a95-a18a-fdd22e0b4441" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/ASP.Net" rel="tag"&gt;ASP.Net&lt;/a&gt;,&lt;a href="http://technorati.com/tags/REST" rel="tag"&gt;REST&lt;/a&gt;,&lt;a href="http://technorati.com/tags/oEmbed" rel="tag"&gt;oEmbed&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Wrapper" rel="tag"&gt;Wrapper&lt;/a&gt;,&lt;a href="http://technorati.com/tags/API" rel="tag"&gt;API&lt;/a&gt;&lt;/div&gt;</description></item><item><title>jQuery Version 1.4 Has Been Released</title><link>http://www.willstrohl.com/Blog/PostId/503/jQuery-Version-14-Has-Been-Released</link><summary /><category>ASP.Net</category><pubDate>Fri, 15 Jan 2010 17:03:00 GMT</pubDate><description>&lt;p&gt;&lt;a href="http://www.jquery.com" target="_blank"&gt;&lt;img style="border-right-width: 0px; margin: 0px 5px 5px 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="jQuery" border="0" alt="jQuery" align="left" src="/Portals/1/Blog/Files/3/518/WLW-LearnAboutUsingjQueryinDotNetNukeTomorro_93F2-jquery_logo_240x81_3.png" width="244" height="85" /&gt;&lt;/a&gt; I don’t know about you, but I have begun using &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; pretty extensively in my UI development.&amp;#160; I know not everyone can, and if you’re in &lt;em&gt;that&lt;/em&gt; crowd, I am sooo sorry! :)&amp;#160; &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; has quite simply and almost single-handedly had an extremely positive impact on all of my web UI.&amp;#160; Through some cool tricks that I’ve picked up here and there, I have created some of the coolest UI’s that I have ever done.&amp;#160; Anyhow, that experience is sure to prove to only get better, as I noticed today that &lt;a href="http://jquery14.com/day-01/jquery-14" target="_blank"&gt;a new version of jQuery is finally upon us&lt;/a&gt;!&lt;/p&gt;  &lt;h3&gt;Introducing jQuery Version 1.04!&lt;/h3&gt;  &lt;p&gt;I have been running with and using version 1.03.02 for a while now, and it’s been very stable for me.&amp;#160; However, I was surprised to see that one of the things done in version 1.04 was that they fixed over 200 bugs!&amp;#160; Holy crap!&amp;#160; I am sure glad I haven’t run into any of those.&amp;#160; &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; has been around for 4 years now.&amp;#160; And in this latest version, they’ve increased the speed of many of the common functions that we use, sometimes by 75%!&lt;/p&gt;  &lt;p&gt;You can find and download &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; in it’s normal places:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Minified:&amp;#160; &lt;a title="http://code.jquery.com/jquery-1.4.min.js" href="http://code.jquery.com/jquery-1.4.min.js" target="_blank"&gt;http://code.jquery.com/jquery-1.4.min.js&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Regular:&amp;#160; &lt;a title="http://code.jquery.com/jquery-1.4.js" href="http://code.jquery.com/jquery-1.4.js" target="_blank"&gt;http://code.jquery.com/jquery-1.4.js&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Google:&amp;#160; &lt;a title="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" href="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" target="_blank"&gt;http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;You can find all of the good stuff about this update on their &lt;a href="http://jquery14.com/day-01/jquery-14" target="_blank"&gt;14 Days of jQuery website&lt;/a&gt;.&amp;#160; What I will do though, is highlight some of the things that you’ll want to look out for after upgrading your own &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; file references on your site.&lt;/p&gt;  &lt;h4&gt;jQuery.ready()&lt;/h4&gt;  &lt;p&gt;I have been using the long form of the ready statement ever since starting out with &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt;.&amp;#160; I’ve done it on purpose, just for the reason I am about to tell you about.&amp;#160; I didn’t want to have to go back into my code and fix any short-cuts I might have made in the past.&amp;#160; With version 1.04, you have to make the following changes in your code:&lt;/p&gt;  &lt;div class="csharpcode"&gt;   &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="rem"&gt;// no worky anymore&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;jQuery().ready( &lt;span class="kwrd"&gt;function&lt;/span&gt;() {&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;   &lt;span class="rem"&gt;// your code&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;} );&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;&lt;span class="rem"&gt;// gotta do this now&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;jQuery(document).ready( &lt;span class="kwrd"&gt;function&lt;/span&gt;() {&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;   &lt;span class="rem"&gt;// your code&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;} );&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;

.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }&lt;/style&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;(Of course, you can still use the $ shortcut. I just choose not to, in order to have cleaner, more consistent code throughout.)&lt;/p&gt;

&lt;h4&gt;Selector Speed&lt;/h4&gt;

&lt;p&gt;Using IDs for your selector, or at least the first selector will make your code run much faster than if you do not.&lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="rem"&gt;// slower&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&lt;span class="kwrd"&gt;var&lt;/span&gt; divWrapper = jQuery(&lt;span class="str"&gt;'.wrapper'&lt;/span&gt;);&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;&lt;span class="kwrd"&gt;var&lt;/span&gt; pDesc = jQuery(&lt;span class="str"&gt;'.wrapper p#description'&lt;/span&gt;);&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;&amp;#160;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;&lt;span class="rem"&gt;// MUCH faster&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;&lt;span class="kwrd"&gt;var&lt;/span&gt; divWrapper = jQuery(&lt;span class="str"&gt;'#divWrapper'&lt;/span&gt;);&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;&lt;span class="kwrd"&gt;var&lt;/span&gt; pDesc = jQuery(&lt;span class="str"&gt;'#description'&lt;/span&gt;);&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;

.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }&lt;/style&gt;

&lt;h4&gt;“Traditional” AJAX&lt;/h4&gt;

&lt;p&gt;The AJAX functions have been improved to allow for nested parameter serialization.&amp;#160; However, this may cause problems with single parameter requests.&amp;#160; In these instances, use one of the following methods to enable the “traditional” AJAX serialization that you’re already used to in v1.03.02.&lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="rem"&gt;// Enables for all serialization&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;jQuery.ajaxSettings.traditional = &lt;span class="kwrd"&gt;true&lt;/span&gt;;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt; &lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;&lt;span class="rem"&gt;// Enables for a single serialization&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;jQuery.param( stuff, &lt;span class="kwrd"&gt;true&lt;/span&gt; );&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt; &lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;&lt;span class="rem"&gt;// Enables for a single Ajax requeset&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;$.ajax({ data: stuff, traditional: &lt;span class="kwrd"&gt;true&lt;/span&gt; });&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;

.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }&lt;/style&gt;

&lt;h4&gt;contentType with AJAX Requests&lt;/h4&gt;

&lt;p&gt;Previously, if you didn’t specify any data in an AJAX request, &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; simply didn’t pass contentType along.&amp;#160; This has been a huge pain for many ASP.Net developers (including myself).&amp;#160; Now, the contentType is always sent, regardless of whether the data parameter is filled or not.&lt;/p&gt;

&lt;h3&gt;Summary&lt;/h3&gt;

&lt;p&gt;For a full list of backwards compatibility concerns, please see this URL:&amp;#160; &lt;a title="http://jquery14.com/day-01/jquery-14#backwards" href="http://jquery14.com/day-01/jquery-14#backwards" target="_blank"&gt;http://jquery14.com/day-01/jquery-14#backwards&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In summary, it would not be an issue for most sites to upgrade.&amp;#160; However, if you’re using any 3rd party plug-ins, you will first want to make sure that those plug-ins will still work.&amp;#160; So, I’d suggest an offline or staging test of the upgraded script first.&amp;#160; However, if for nothing else, you really should upgrade for the speed benefits in version 1.04.&amp;#160; What’s really cool is that if you want the speed, but also want to be backwards compatible, the &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; team has though about you!&lt;/p&gt;

&lt;p&gt;You can be backwards compatible by including the &lt;a href="http://github.com/jquery/jquery-compat-1.3" target="_blank"&gt;backwards compatibility plug-in&lt;/a&gt; on your site.&amp;#160; Here’s an example from their site:&lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt; &lt;span class="attr"&gt;src&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;http://code.jquery.com/jquery.js&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&amp;lt;script src=&lt;span class="str"&gt;&amp;quot;http://code.jquery.com/jquery.compat-1.3.js&amp;quot;&lt;/span&gt;&amp;gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;script&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;

.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }&lt;/style&gt;

&lt;p&gt;I haven’t tried upgrading any of my &lt;a href="http://www.dotnetnuke.com" target="_blank"&gt;DotNetNuke®&lt;/a&gt; sites yet, but you have better bet I will very soon!&amp;#160; :)&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:b848a6b3-b569-4809-9e7b-bc2b3cf1a86b" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/jQuery" rel="tag"&gt;jQuery&lt;/a&gt;,&lt;a href="http://technorati.com/tags/JavaScript" rel="tag"&gt;JavaScript&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Selecting A List Option Using the Text Attribute via jQuery</title><link>http://www.willstrohl.com/Blog/PostId/494/Selecting-A-List-Option-Using-the-Text-Attribute-</link><summary /><category>ASP.Net</category><pubDate>Wed, 25 Nov 2009 19:36:00 GMT</pubDate><description>&lt;p&gt;Here is another blog by request.&amp;#160; I blogged not too long ago about using &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; to &lt;a href="/Blog/tabid/66/EntryId/302/jQuery-Change-the-Default-Option-in-a-Select-Listbox.aspx" target="_blank"&gt;change the default option in a listbox&lt;/a&gt;.&amp;#160; As a result, a comment was added that asked me how to change the selected option using only the text, and not the value.&amp;#160; Here is the answer!&amp;#160; Doing this is actually quite simple, but may not be straightforward at first.&amp;#160; &lt;/p&gt;  &lt;p&gt;In order to demo this, we need a listbox (select, combo box, drop down list, etc.).&amp;#160; Here is the one I am using for my example:&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;     &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;select&lt;/span&gt; &lt;span style="color: #ff0000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;cboList&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt; &lt;span style="color: #ff0000"&gt;value&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;val1&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Text1&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt; &lt;span style="color: #ff0000"&gt;value&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;val2&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Text2&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt; &lt;span style="color: #ff0000"&gt;value&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;val3&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Text3&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt; &lt;span style="color: #ff0000"&gt;value&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;val4&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Text4&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt; &lt;span style="color: #ff0000"&gt;value&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;val5&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Text5&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt; &lt;span style="color: #ff0000"&gt;value&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;val6&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Text6&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;option&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;select&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Just a simple drop down list, right?&amp;#160; Right.&amp;#160; Now, let’s use &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; to select the default value that will show to your website visitors.&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;jQuery(document).ready(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    jQuery(&lt;span style="color: #006080"&gt;'#cboList option:contains(\'Text5\')'&lt;/span&gt;).attr(&lt;span style="color: #006080"&gt;'selected'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'selected'&lt;/span&gt;);&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;});&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Just (technically) one line of &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; to make this happen!&amp;#160; Imagine doing that on your own using plain old JavaScript.&amp;#160; Here it is in action!&lt;/p&gt;

&lt;p&gt;&lt;select id="cboList"&gt; &lt;option value="val1"&gt;Text1&lt;/option&gt; &lt;option value="val2"&gt;Text2&lt;/option&gt; &lt;option value="val3"&gt;Text3&lt;/option&gt; &lt;option value="val4"&gt;Text4&lt;/option&gt; &lt;option value="val5"&gt;Text5&lt;/option&gt; &lt;option value="val6"&gt;Text6&lt;/option&gt;&lt;/select&gt;&lt;/p&gt;
&lt;script language="javascript" type="text/javascript"&gt;
        jQuery(document).ready(function() {

            jQuery('#cboList option:contains(\'Text5\')').attr('selected', 'selected');

        });
    &lt;/script&gt;

&lt;p&gt;Now you can try this on your own!&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:a6548f8c-9b3b-44f3-b77c-d6d52c35783b" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/ASP.Net" rel="tag"&gt;ASP.Net&lt;/a&gt;,&lt;a href="http://technorati.com/tags/jQuery" rel="tag"&gt;jQuery&lt;/a&gt;,&lt;a href="http://technorati.com/tags/JavaScript" rel="tag"&gt;JavaScript&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Create a Simple and Quick Web Service Handler</title><link>http://www.willstrohl.com/Blog/PostId/493/Create-a-Simple-and-Quick-Web-Service-Handler</link><summary /><category>ASP.Net</category><pubDate>Wed, 25 Nov 2009 14:39:00 GMT</pubDate><description>&lt;p&gt;There are some cases where a full-blown web service or WCF implementation is just too much for the project you’re working on.&amp;#160; In those times, I often resort to building a similar implementation using an ASP.Net handler to accepts posts, and return data, just like a standard web service would do.&amp;#160; This is not new.&amp;#160; We’ve been doing similar things in Classic ASP and PHP for some time now.&amp;#160; &lt;/p&gt;  &lt;p&gt;I like doing this, because it’s quick, easy, and usually does the job better than a full-fledged web service when this solution fits the project requirements.&amp;#160; Otherwise, this is just stupid! ;)&lt;/p&gt;  &lt;p&gt;For my example, I am going to assume you need a handler or web service to return JSON data for an AJAX request, much like you’d need for a &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; AJAX call.&lt;/p&gt;  &lt;p&gt;In its simplest form, JSON data that is returned as a result of an AJAX request looks something like the example below.&amp;#160; The collection name and values will vary from application to application.&amp;#160; Keeping this example in mind, all you have to do is return a string object to the requesting application.&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;     &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;{ collectionName: [&lt;span style="color: #006080"&gt;'value1'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'value2'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'value3'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'value4'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'value5'&lt;/span&gt;] }&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;First thing is first, add a handler to your project.&lt;/p&gt;

&lt;p&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Add New Item: Generic Handler" border="0" alt="Add New Item: Generic Handler" src="/Portals/1/Blog/Files/9/520/WLW-CreateaSimpleandQuickWebServiceHandler_DFA3-add_handler_3.png" width="504" height="306" /&gt; &lt;/p&gt;

&lt;p&gt;When you add the handler, the HTML markup should be relatively empty.&amp;#160; That is because all of the action happens behind the scenes, in the code.&amp;#160; By default, you will have a class that looks something like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="/Portals/1/Blog/Files/9/520/WLW-CreateaSimpleandQuickWebServiceHandler_DFA3-empty_handler_class_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Empty ASP.Net Handler Class" border="0" alt="Empty ASP.Net Handler Class" src="/Portals/1/Blog/Files/9/520/WLW-CreateaSimpleandQuickWebServiceHandler_DFA3-empty_handler_class_thumb.png" width="504" height="225" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;This is a great template to start with for what we’re going to do.&amp;#160; Now, we simply need to add our own logic to return our data.&amp;#160; The format of the data is normally either defined by you, or by the application you’re using or extending.&amp;#160; &lt;/p&gt;

&lt;p&gt;We are going to assume that we are using an AJAX application that expects to receive a collection of names.&amp;#160; We want our resulting JSON data to look like this:&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;{ fullNames: [&lt;span style="color: #006080"&gt;'John Dough'&lt;/span&gt;,&lt;span style="color: #006080"&gt;'Jane Dough'&lt;/span&gt;,&lt;span style="color: #006080"&gt;'Bart Simpson'&lt;/span&gt;,&lt;span style="color: #006080"&gt;'Jon Arbuckle'&lt;/span&gt;,&lt;span style="color: #006080"&gt;'Danger Mouse'&lt;/span&gt;] }&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;First, remove this line of code from your class:&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;context.Response.Write(&lt;span style="color: #006080"&gt;&amp;quot;Hello World!&amp;quot;&lt;/span&gt;)&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Now, whatever we do with our business logic, we are going to return our JSON string using the &lt;font face="Courier New"&gt;context.Response.Write()&lt;/font&gt; method.&lt;/p&gt;

&lt;p&gt;At this point, we’d already have a Data Source in mind to grab our string-based data.&amp;#160; It doesn’t matter where it comes from.&amp;#160; I can be from another web service, database, XML files, etc.&amp;#160; It doesn’t matter.&amp;#160; All you need to do is feed your data into a string builder of some kind, and return it.&lt;/p&gt;

&lt;p&gt;Here is my example, using a Customer object that gets populated from an imaginary Data Source.&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; ctlCustomer &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; &lt;span style="color: #0000ff"&gt;New&lt;/span&gt; CustomerController&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;' grab a list of all of the customer&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; lstCustomer &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; List(Of CustomerInfo) = ctlCustomer.GetSortedCustomers()&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; sb &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; &lt;span style="color: #0000ff"&gt;New&lt;/span&gt; StringBuilder&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;sb.Append(&lt;span style="color: #006080"&gt;&amp;quot;{ fullNames:[&amp;quot;&lt;/span&gt;)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;' Loop through the available customers&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;For&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Each&lt;/span&gt; person &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; CustomerInfo &lt;span style="color: #0000ff"&gt;In&lt;/span&gt; lstCustomer.Values&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;If&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Not&lt;/span&gt; &lt;span style="color: #0000ff"&gt;String&lt;/span&gt;.IsNullOrEmpty(person.FullName) &lt;span style="color: #0000ff"&gt;Then&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #008000"&gt;' We need to replace the forward slash and single quotes, or the JavaScript will choke on them.&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        sb.AppendFormat(&lt;span style="color: #006080"&gt;&amp;quot;'{0}',&amp;quot;&lt;/span&gt;, Regex.Replace(person.FullName, &lt;span style="color: #006080"&gt;&amp;quot;([/'])&amp;quot;&lt;/span&gt;, &lt;span style="color: #006080"&gt;&amp;quot;\$0&amp;quot;&lt;/span&gt;))&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;End&lt;/span&gt; &lt;span style="color: #0000ff"&gt;If&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;Next&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;sb.Append(&lt;span style="color: #006080"&gt;&amp;quot;] }&amp;quot;&lt;/span&gt;)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;If&lt;/span&gt; sb.Length &amp;gt; 0 &lt;span style="color: #0000ff"&gt;Then&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    context.Response.Write(sb.ToString)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;Else&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    context.Response.Write(&lt;span style="color: #0000ff"&gt;String&lt;/span&gt;.Empty)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;End&lt;/span&gt; If&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;In our code snippet, we are using a StringBuilder to create the string output that we’re looking for, using the List object that we loaded from our Data Source.&amp;#160; We simply loop through the collection, adding the customer to the list of full names.&amp;#160; Once the customers are iterated through, the handler writes the resulting string as the response.&lt;/p&gt;

&lt;p&gt;Now that we have that logic, our class should look something like this:&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;Imports&lt;/span&gt; System.Web&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;Imports&lt;/span&gt; System.Web.Services&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;Public&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Class&lt;/span&gt; Handler1&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;Implements&lt;/span&gt; System.Web.IHttpHandler&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;Sub&lt;/span&gt; ProcessRequest(&lt;span style="color: #0000ff"&gt;ByVal&lt;/span&gt; context &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; HttpContext) &lt;span style="color: #0000ff"&gt;Implements&lt;/span&gt; IHttpHandler.ProcessRequest&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        context.Response.ContentType = &lt;span style="color: #006080"&gt;&amp;quot;text/plain&amp;quot;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; ctlCustomer &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; &lt;span style="color: #0000ff"&gt;New&lt;/span&gt; CustomerController&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #008000"&gt;' grab a list of all of the customer&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; lstCustomer &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; List(Of CustomerInfo) = ctlCustomer.GetSortedCustomers()&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; sb &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; &lt;span style="color: #0000ff"&gt;New&lt;/span&gt; StringBuilder&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        sb.Append(&lt;span style="color: #006080"&gt;&amp;quot;{ fullNames:[&amp;quot;&lt;/span&gt;)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #008000"&gt;' Loop through the available customers&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;For&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Each&lt;/span&gt; person &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; CustomerInfo &lt;span style="color: #0000ff"&gt;In&lt;/span&gt; lstCustomer.Values&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;If&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Not&lt;/span&gt; &lt;span style="color: #0000ff"&gt;String&lt;/span&gt;.IsNullOrEmpty(person.FullName) &lt;span style="color: #0000ff"&gt;Then&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;                &lt;span style="color: #008000"&gt;' We need to replace the forward slash and single quotes, or the JavaScript will choke on them.&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;                sb.AppendFormat(&lt;span style="color: #006080"&gt;&amp;quot;'{0}',&amp;quot;&lt;/span&gt;, Regex.Replace(person.FullName, &lt;span style="color: #006080"&gt;&amp;quot;([/'])&amp;quot;&lt;/span&gt;, &lt;span style="color: #006080"&gt;&amp;quot;\$0&amp;quot;&lt;/span&gt;))&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;End&lt;/span&gt; &lt;span style="color: #0000ff"&gt;If&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;Next&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        sb.Append(&lt;span style="color: #006080"&gt;&amp;quot;] }&amp;quot;&lt;/span&gt;)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;If&lt;/span&gt; sb.Length &amp;gt; 0 &lt;span style="color: #0000ff"&gt;Then&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            context.Response.Write(sb.ToString)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;Else&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            context.Response.Write(&lt;span style="color: #0000ff"&gt;String&lt;/span&gt;.Empty)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;End&lt;/span&gt; &lt;span style="color: #0000ff"&gt;If&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;End&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Sub&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;ReadOnly&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Property&lt;/span&gt; IsReusable() &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Boolean&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Implements&lt;/span&gt; IHttpHandler.IsReusable&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;Get&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;Return&lt;/span&gt; &lt;span style="color: #0000ff"&gt;False&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;End&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Get&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;End&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Property&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;End&lt;/span&gt; Class&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;That’s all there is to it!&amp;#160; Our resulting response will look exactly like what our AJAX project asked for.&amp;#160; Really simple, right?&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:b388118b-a08d-4c30-8685-0051c6dd9aba" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/ASP.Net" rel="tag"&gt;ASP.Net&lt;/a&gt;,&lt;a href="http://technorati.com/tags/VB.Net" rel="tag"&gt;VB.Net&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Handler" rel="tag"&gt;Handler&lt;/a&gt;,&lt;a href="http://technorati.com/tags/JSON" rel="tag"&gt;JSON&lt;/a&gt;,&lt;a href="http://technorati.com/tags/AJAX" rel="tag"&gt;AJAX&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Web+Service" rel="tag"&gt;Web Service&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Using the Autocomplete jQuery Plugin</title><link>http://www.willstrohl.com/Blog/PostId/492/Using-the-Autocomplete-jQuery-Plugin</link><summary /><category>ASP.Net</category><pubDate>Wed, 18 Nov 2009 20:06:00 GMT</pubDate><description>&lt;p&gt;In my day job at &lt;a href="http://www.rezhub.com/" target="_blank"&gt;RezHub.com&lt;/a&gt;, we began using &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; last December, and there has been no turning back.&amp;#160; Our site is a &lt;a href="http://www.dotnetnuke.com" target="_blank"&gt;DotNetNuke&lt;/a&gt; website, and out main module is the one that facilitates the travel searches, such as the one on the &lt;a href="http://www.rezhub.com" target="_blank"&gt;RezHub home page&lt;/a&gt;.&amp;#160; It was originally built by &lt;a href="http://www.arrowdesigns.com" target="_blank"&gt;Arrow Designs&lt;/a&gt;, and has since been maintained by us.&amp;#160; It functions almost exclusively using &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; and various &lt;a href="http://plugins.jquery.com/" target="_blank"&gt;jQuery plugins&lt;/a&gt;, including the &lt;a href="http://www.devbridge.com/projects/autocomplete/jquery/" target="_blank"&gt;Autocomplete plugin&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="/Portals/1/Blog/Files/3/519/WLW-UsingtheAutocompletejQueryPlugin_C304-rezhub_homepage_travelsearch_module_2.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="RezHub.com Home Page Screen Shot" border="0" alt="RezHub.com Home Page Screen Shot" src="/Portals/1/Blog/Files/3/519/WLW-UsingtheAutocompletejQueryPlugin_C304-rezhub_homepage_travelsearch_module_thumb.png" width="419" height="345" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;The &lt;a href="http://www.devbridge.com/projects/autocomplete/jquery/" target="_blank"&gt;Autocomplete plugin&lt;/a&gt; allows the end-user to begin typing a value for a textbox, and the textbox will suggest values that are acceptable to be entered.&amp;#160; In our case, we are suggesting travel destinations.&amp;#160; This allows for developers to have a real possibility to increase usability on their web forms.&lt;/p&gt;  &lt;p&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Travel Search Autocomplete Example" border="0" alt="Travel Search Autocomplete Example" src="/Portals/1/Blog/Files/3/519/WLW-UsingtheAutocompletejQueryPlugin_C304-travel_search_autocomplete_dropdown_3.png" width="401" height="296" /&gt; &lt;/p&gt;  &lt;p&gt;While the example I am giving you is actually more complicated than the code I will be showing you, the functionality and end-result remain the same.&amp;#160; It is quite simple to wire up a textbox to take advantage of Autocomplete, but there is a little work that you might need to do first.&amp;#160; Make sure that you have the &lt;a href="http://www.devbridge.com/projects/autocomplete/jquery/" target="_blank"&gt;Autocomplete plugin&lt;/a&gt; script (and &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt;) included in your page or module.&amp;#160; &lt;/p&gt;  &lt;p&gt;The first step to making this work is to add the references to your page.&amp;#160; I have blogged about this in various forms in several earlier posts, so I will not rehash it here.&amp;#160; Besides, I have another post planned this week that will rehash it again anyhow. ;)&lt;/p&gt;  &lt;h2&gt;Let’s See it Work&lt;/h2&gt;  &lt;p&gt;After adding the &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; references to your page, this would be a really simple example of using Autocomplete using the following code:&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;     &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;input&lt;/span&gt; &lt;span style="color: #ff0000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;txtCity&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;type&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;text&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;script&lt;/span&gt; &lt;span style="color: #ff0000"&gt;language&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;javascript&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;type&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   1:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   2:&lt;/span&gt;     jQuery(document).ready(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;(){&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   3:&lt;/span&gt;         &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; data = &lt;span style="color: #006080"&gt;'Orlando Jacksonville Pensacola Tallahassee Tampa Clearwater Naples Sarasota Miami'&lt;/span&gt;.split(&lt;span style="color: #006080"&gt;' '&lt;/span&gt;);&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   4:&lt;/span&gt;         &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; options = { lookUp: data }&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   5:&lt;/span&gt;         jQuery(&lt;span style="color: #006080"&gt;'input#txtCity'&lt;/span&gt;).autocomplete(options);&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   6:&lt;/span&gt;     });&lt;/pre&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;script&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Here is what that might look like:&lt;/p&gt;
&lt;style type="text/css"&gt;


.autocomplete-w1 { background:url(img/shadow.png) no-repeat bottom right; position:absolute; top:0px; left:0px; margin:6px 0 0 6px; /* IE6 fix: */ _background:none; _margin:1px 0 0 0; }
.autocomplete { border:1px solid #999; background:#fff; cursor:default; text-align:left; max-height:350px; overflow:auto; margin:-6px 6px 6px -6px; /* IE6 specific: */ _height:350px;  _margin:0; _overflow-x:hidden; }
.autocomplete .selected { background:#f0f0f0; }
.autocomplete div { padding:2px 5px; white-space:nowrap; overflow:hidden; }
.autocomplete strong { font-weight:normal; color:#3399ff; }&lt;/style&gt;&lt;script language="javascript" type="text/javascript" src="/Portals/1/jQuery/Autocomplete/jquery.autocomplete.js"&gt;&lt;/script&gt;&lt;script language="javascript" type="text/javascript"&gt;
	jQuery(document).ready(function(){
		var data = 'Orlando Jacksonville Pensacola Tallahassee Tampa Clearwater Naples Sarasota Miami'.split(' ');
		var options = { lookup: data }
		jQuery('input#txtCity').autocomplete(options);
	});
&lt;/script&gt;

&lt;p&gt;City Name: &lt;input id="txtCity" /&gt; (Enter in the first few letters of a city name.)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Hint!&lt;/em&gt;&lt;/strong&gt;&amp;#160; Choose one of these cities:&amp;#160; Orlando Jacksonville Pensacola Tallahassee Tampa Clearwater Naples Sarasota Miami&lt;/p&gt;

&lt;p&gt;That seems easy enough, right?&amp;#160; Give it a go!&amp;#160; &lt;/p&gt;

&lt;h3&gt;Using a Web Service&lt;/h3&gt;

&lt;p&gt;The next step is to attach this to a web service to make it use dynamic data.&amp;#160; Assuming that the web service only returns a single string to the Autocomplete, here is how you’d do that:&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;// imaginary web service returning a list of String&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;var&lt;/span&gt; urlService = &lt;span style="color: #006080"&gt;'http://www.domain.com/services/service.svc'&lt;/span&gt;;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;var&lt;/span&gt; options = { serviceUrl: urlService }&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;jQuery(&lt;span style="color: #006080"&gt;'input#txtCity'&lt;/span&gt;).autocomplete(options);&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;That’s not all that difficult, right?&amp;#160; The second half of the call allows you to call and set optional settings, such as &lt;font face="Courier New"&gt;minChars&lt;/font&gt; to designate how many characters to wait for before the autocomplete task begins.&amp;#160; I will be blogging in greater detail about the web service implementation later.&lt;/p&gt;

&lt;p&gt;Hopefully, that’s enough to get your interest piqued enough to try this on your own.&amp;#160; &lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:d525a896-9fe1-4ce4-b152-5f25511460fb" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/DotNetNuke" rel="tag"&gt;DotNetNuke&lt;/a&gt;,&lt;a href="http://technorati.com/tags/DNN" rel="tag"&gt;DNN&lt;/a&gt;,&lt;a href="http://technorati.com/tags/DNN+Blogs" rel="tag"&gt;DNN Blogs&lt;/a&gt;,&lt;a href="http://technorati.com/tags/jQuery" rel="tag"&gt;jQuery&lt;/a&gt;,&lt;a href="http://technorati.com/tags/ASP.Net" rel="tag"&gt;ASP.Net&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Autocomplete" rel="tag"&gt;Autocomplete&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Intellisense" rel="tag"&gt;Intellisense&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Relocate Selected Table Row Using jQuery</title><link>http://www.willstrohl.com/Blog/PostId/486/Relocate-Selected-Table-Row-Using-jQuery</link><summary /><category>ASP.Net</category><pubDate>Thu, 05 Nov 2009 05:47:00 GMT</pubDate><description>&lt;p&gt;This blog entry is a response to a request from an earlier blog entry, where I used &lt;a href="/Blog/tabid/66/EntryId/494/Using-jQuery-to-Search-an-HTML-Table.aspx" target="_blank"&gt;jQuery to search an HTML table&lt;/a&gt;.&amp;#160; The request as I understand it is this.&amp;#160; How can I allow the website visitor click on a row in a HTML table, and relocate that row to the top of the table?&amp;#160; Even though I cannot think of a use for this functionality myself, I was intrigued.&amp;#160; So here is how I accomplish that task.&lt;/p&gt;  &lt;p&gt;First of all, I needed a table to test this on.&amp;#160; I used the example from the aforementioned post, as shown below:&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;     &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;table&lt;/span&gt; &lt;span style="color: #ff0000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;tblCustomer&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;cellspacing&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;0&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;cellpadding&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;2&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;border&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;1&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;style&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;width: 500px;&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tbody&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt; &lt;span style="color: #ff0000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;rowHeader&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;style&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;font-weight: bold;&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;First&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Last&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Address&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;City&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;State&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;John&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Dough&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;123 Main Street&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Orlando&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Florida&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Jane&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Dough&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;4367 South Washington Avenue&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Bartow&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;California&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Bart&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Thompson&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;531 Townsend Circle&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Atlanta&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Georgia&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Sherry&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Simpson&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;3346 Presario Lane, Apt. 123&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Seattle&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Washington&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Matt&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Damon&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;300 Pounds Street&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Boston&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Massachusetts&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;td&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tr&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;tbody&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;table&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;This table is just a small example of the kind of data you might be working with.&amp;#160; In it, we have a listing of “customers” that are displayed.&amp;#160; Note that there is a header row that gives context to the information in each column.&lt;/p&gt;

&lt;p&gt;The next thing I did was something that I could have and should have done using actual CSS.&amp;#160; I added some visual context to the rows to help you visualize what happened.&amp;#160; I did it this way to make it easier to add to my blog.&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;function&lt;/span&gt; setCssRules() {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// this would be better implemented in a CSS file&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    jQuery(&lt;span style="color: #006080"&gt;'#tblCustomer tr:not(\'#rowHeader\')'&lt;/span&gt;)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        .css(&lt;span style="color: #006080"&gt;'cursor'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'pointer'&lt;/span&gt;)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        .mouseover(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            jQuery(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).css(&lt;span style="color: #006080"&gt;'background-color'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'#c0c0c0'&lt;/span&gt;);&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        })&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        .mouseout(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            jQuery(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).css(&lt;span style="color: #006080"&gt;'background-color'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'#ffffff'&lt;/span&gt;);&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        });&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;}&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;Looking at the previous code, I just make the little hand show up when the mouse is over a table row.&amp;#160; Then, I change the background color for each row, depending on if the mouse is over the row or not.&lt;/p&gt;

&lt;p&gt;I used the &lt;font face="Courier New"&gt;jQuery(“#tblCustomer tr:not('#rowHeader')”)&lt;/font&gt; selector to exclude the first row in the table from the interactive changes.&lt;/p&gt;

&lt;p&gt;Next, I add the following &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; snippet that grabs the clicked row and moves it to the top of the table.&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;// wire up the logic to make our function work&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;jQuery(&lt;span style="color: #006080"&gt;'#tblCustomer tr:not(\'#rowHeader\')'&lt;/span&gt;).click(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// get a reference to the chosen row&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; oRow = &lt;span style="color: #0000ff"&gt;this&lt;/span&gt;;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// remove the row from the table&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    jQuery(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).remove();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// add the row to the top of the table&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    jQuery(&lt;span style="color: #006080"&gt;'#tblCustomer'&lt;/span&gt;).prepend(oRow);&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// backtrack to put the header row back at the top of chosen row&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    jQuery(&lt;span style="color: #006080"&gt;'#rowHeader'&lt;/span&gt;).prependTo(&lt;span style="color: #006080"&gt;'#tblCustomer'&lt;/span&gt;);&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// reset the CSS rules&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    jQuery(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).css(&lt;span style="color: #006080"&gt;'background-color'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'#ffffff'&lt;/span&gt;);&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    setCssRules();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;});&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;Notice that the selector is the same as before.&amp;#160; Moving the row to the top of the table is easy.&amp;#160; However, this table has a header row, so we need to take that into account.&amp;#160; The method I used here allows us to move the header row back to the top after the selected row is moved.&amp;#160; Finally, we fix the CSS to revert back to our original CSS changes.&lt;/p&gt;

&lt;p&gt;Here is the code in action!&lt;/p&gt;

&lt;table style="width: 500px" id="tblCustomer" border="1" cellspacing="0" cellpadding="2"&gt;&lt;tbody&gt;
    &lt;tr style="font-weight: bold" id="rowHeader"&gt;
      &lt;td&gt;First&lt;/td&gt;

      &lt;td&gt;Last&lt;/td&gt;

      &lt;td&gt;Address&lt;/td&gt;

      &lt;td&gt;City&lt;/td&gt;

      &lt;td&gt;State&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;John&lt;/td&gt;

      &lt;td&gt;Dough&lt;/td&gt;

      &lt;td&gt;123 Main Street&lt;/td&gt;

      &lt;td&gt;Orlando&lt;/td&gt;

      &lt;td&gt;Florida&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;Jane&lt;/td&gt;

      &lt;td&gt;Dough&lt;/td&gt;

      &lt;td&gt;4367 South Washington Avenue&lt;/td&gt;

      &lt;td&gt;Bartow&lt;/td&gt;

      &lt;td&gt;California&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;Bart&lt;/td&gt;

      &lt;td&gt;Thompson&lt;/td&gt;

      &lt;td&gt;531 Townsend Circle&lt;/td&gt;

      &lt;td&gt;Atlanta&lt;/td&gt;

      &lt;td&gt;Georgia&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;Sherry&lt;/td&gt;

      &lt;td&gt;Simpson&lt;/td&gt;

      &lt;td&gt;3346 Presario Lane, Apt. 123&lt;/td&gt;

      &lt;td&gt;Seattle&lt;/td&gt;

      &lt;td&gt;Washington&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;Matt&lt;/td&gt;

      &lt;td&gt;Damon&lt;/td&gt;

      &lt;td&gt;300 Pounds Street&lt;/td&gt;

      &lt;td&gt;Boston&lt;/td&gt;

      &lt;td&gt;Massachusetts&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;
&lt;script language="javascript" type="text/javascript"&gt;
        jQuery(document).ready(function() {

            setCssRules();

            // wire up the logic to make our function work
            jQuery('#tblCustomer tr:not(\'#rowHeader\')').click(function() {

                // get a reference to the chosen row
                var oRow = this;
                // remove the row from the table
                jQuery(this).remove();
                // add the row to the top of the table
                jQuery('#tblCustomer').prepend(oRow);
                // backtrack to put the header row back at the top of chosen row
                jQuery('#rowHeader').prependTo('#tblCustomer');
                // reset the CSS rules
                jQuery(this).css('background-color', '#ffffff');
                setCssRules();
            });

        });

        function setCssRules() {
            // this would be better implemented in a CSS file
            jQuery('#tblCustomer tr:not(\'#rowHeader\')')
                .css('cursor', 'pointer')
                .mouseover(function() {
                    jQuery(this).css('background-color', '#c0c0c0');
                })
                .mouseout(function() {
                    jQuery(this).css('background-color', '#ffffff');
                });
        }
    &lt;/script&gt;

&lt;p&gt;That’s it!&amp;#160; I hope this helps you.&amp;#160; Enjoy the complete snippet here:&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #800000"&gt;DOCTYPE&lt;/span&gt; &lt;span style="color: #ff0000"&gt;html&lt;/span&gt; &lt;span style="color: #ff0000"&gt;PUBLIC&lt;/span&gt; &lt;span style="color: #0000ff"&gt;&amp;quot;-//W3C//DTD XHTML 1.0 Transitional//EN&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;&amp;quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;html&lt;/span&gt; &lt;span style="color: #ff0000"&gt;xmlns&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;head&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Untitled&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;script&lt;/span&gt; &lt;span style="color: #ff0000"&gt;language&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;javascript&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;type&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;src&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;/Resources/shared/scripts/jquery/jquery.min.js&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;script&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   1:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   2:&lt;/span&gt;     &amp;lt;script language=&lt;span style="color: #006080"&gt;&amp;quot;javascript&amp;quot;&lt;/span&gt; type=&lt;span style="color: #006080"&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&amp;gt;jQuery.noConflict();&lt;/pre&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;script&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   1:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   2:&lt;/span&gt; &amp;lt;/head&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   3:&lt;/span&gt; &amp;lt;body&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   4:&lt;/span&gt;     &amp;lt;table id=&lt;span style="color: #006080"&gt;&amp;quot;tblCustomer&amp;quot;&lt;/span&gt; cellspacing=&lt;span style="color: #006080"&gt;&amp;quot;0&amp;quot;&lt;/span&gt; cellpadding=&lt;span style="color: #006080"&gt;&amp;quot;2&amp;quot;&lt;/span&gt; border=&lt;span style="color: #006080"&gt;&amp;quot;1&amp;quot;&lt;/span&gt; style=&lt;span style="color: #006080"&gt;&amp;quot;width: 500px;&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   5:&lt;/span&gt;         &amp;lt;tbody&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   6:&lt;/span&gt;             &amp;lt;tr id=&lt;span style="color: #006080"&gt;&amp;quot;rowHeader&amp;quot;&lt;/span&gt; style=&lt;span style="color: #006080"&gt;&amp;quot;font-weight: bold;&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   7:&lt;/span&gt;                 &amp;lt;td&amp;gt;First&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   8:&lt;/span&gt;                 &amp;lt;td&amp;gt;Last&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   9:&lt;/span&gt;                 &amp;lt;td&amp;gt;Address&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  10:&lt;/span&gt;                 &amp;lt;td&amp;gt;City&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  11:&lt;/span&gt;                 &amp;lt;td&amp;gt;State&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  12:&lt;/span&gt;             &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  13:&lt;/span&gt;             &amp;lt;tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  14:&lt;/span&gt;                 &amp;lt;td&amp;gt;John&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  15:&lt;/span&gt;                 &amp;lt;td&amp;gt;Dough&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  16:&lt;/span&gt;                 &amp;lt;td&amp;gt;123 Main Street&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  17:&lt;/span&gt;                 &amp;lt;td&amp;gt;Orlando&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  18:&lt;/span&gt;                 &amp;lt;td&amp;gt;Florida&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  19:&lt;/span&gt;             &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  20:&lt;/span&gt;             &amp;lt;tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  21:&lt;/span&gt;                 &amp;lt;td&amp;gt;Jane&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  22:&lt;/span&gt;                 &amp;lt;td&amp;gt;Dough&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  23:&lt;/span&gt;                 &amp;lt;td&amp;gt;4367 South Washington Avenue&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  24:&lt;/span&gt;                 &amp;lt;td&amp;gt;Bartow&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  25:&lt;/span&gt;                 &amp;lt;td&amp;gt;California&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  26:&lt;/span&gt;             &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  27:&lt;/span&gt;             &amp;lt;tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  28:&lt;/span&gt;                 &amp;lt;td&amp;gt;Bart&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  29:&lt;/span&gt;                 &amp;lt;td&amp;gt;Thompson&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  30:&lt;/span&gt;                 &amp;lt;td&amp;gt;531 Townsend Circle&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  31:&lt;/span&gt;                 &amp;lt;td&amp;gt;Atlanta&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  32:&lt;/span&gt;                 &amp;lt;td&amp;gt;Georgia&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  33:&lt;/span&gt;             &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  34:&lt;/span&gt;             &amp;lt;tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  35:&lt;/span&gt;                 &amp;lt;td&amp;gt;Sherry&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  36:&lt;/span&gt;                 &amp;lt;td&amp;gt;Simpson&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  37:&lt;/span&gt;                 &amp;lt;td&amp;gt;3346 Presario Lane, Apt. 123&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  38:&lt;/span&gt;                 &amp;lt;td&amp;gt;Seattle&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  39:&lt;/span&gt;                 &amp;lt;td&amp;gt;Washington&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  40:&lt;/span&gt;             &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  41:&lt;/span&gt;             &amp;lt;tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  42:&lt;/span&gt;                 &amp;lt;td&amp;gt;Matt&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  43:&lt;/span&gt;                 &amp;lt;td&amp;gt;Damon&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  44:&lt;/span&gt;                 &amp;lt;td&amp;gt;300 Pounds Street&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  45:&lt;/span&gt;                 &amp;lt;td&amp;gt;Boston&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  46:&lt;/span&gt;                 &amp;lt;td&amp;gt;Massachusetts&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  47:&lt;/span&gt;             &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  48:&lt;/span&gt;         &amp;lt;/tbody&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  49:&lt;/span&gt;     &amp;lt;/table&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  50:&lt;/span&gt;     &amp;lt;script language=&lt;span style="color: #006080"&gt;&amp;quot;javascript&amp;quot;&lt;/span&gt; type=&lt;span style="color: #006080"&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  51:&lt;/span&gt;         jQuery(document).ready(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  52:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  53:&lt;/span&gt;             setCssRules();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  54:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  55:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// wire up the logic to make our function work&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  56:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'#tblCustomer tr:not(\'#rowHeader\')'&lt;/span&gt;).click(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  57:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  58:&lt;/span&gt;                 &lt;span style="color: #008000"&gt;// get a reference to the chosen row&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  59:&lt;/span&gt;                 &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; oRow = &lt;span style="color: #0000ff"&gt;this&lt;/span&gt;;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  60:&lt;/span&gt;                 &lt;span style="color: #008000"&gt;// remove the row from the table&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  61:&lt;/span&gt;                 jQuery(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).remove();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  62:&lt;/span&gt;                 &lt;span style="color: #008000"&gt;// add the row to the top of the table&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  63:&lt;/span&gt;                 jQuery(&lt;span style="color: #006080"&gt;'#tblCustomer'&lt;/span&gt;).prepend(oRow);&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  64:&lt;/span&gt;                 &lt;span style="color: #008000"&gt;// backtrack to put the header row back at the top of chosen row&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  65:&lt;/span&gt;                 jQuery(&lt;span style="color: #006080"&gt;'#rowHeader'&lt;/span&gt;).prependTo(&lt;span style="color: #006080"&gt;'#tblCustomer'&lt;/span&gt;);&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  66:&lt;/span&gt;                 &lt;span style="color: #008000"&gt;// reset the CSS rules&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  67:&lt;/span&gt;                 jQuery(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).css(&lt;span style="color: #006080"&gt;'background-color'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'#ffffff'&lt;/span&gt;);&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  68:&lt;/span&gt;                 setCssRules();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  69:&lt;/span&gt;             });&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  70:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  71:&lt;/span&gt;         });&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  72:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  73:&lt;/span&gt;         &lt;span style="color: #0000ff"&gt;function&lt;/span&gt; setCssRules() {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  74:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// this would be better implemented in a CSS file&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  75:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'#tblCustomer tr:not(\'#rowHeader\')'&lt;/span&gt;)&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  76:&lt;/span&gt;                 .css(&lt;span style="color: #006080"&gt;'cursor'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'pointer'&lt;/span&gt;)&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  77:&lt;/span&gt;                 .mouseover(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  78:&lt;/span&gt;                     jQuery(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).css(&lt;span style="color: #006080"&gt;'background-color'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'#c0c0c0'&lt;/span&gt;);&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  79:&lt;/span&gt;                 })&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  80:&lt;/span&gt;                 .mouseout(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  81:&lt;/span&gt;                     jQuery(&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;).css(&lt;span style="color: #006080"&gt;'background-color'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'#ffffff'&lt;/span&gt;);&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  82:&lt;/span&gt;                 });&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  83:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  84:&lt;/span&gt;     &lt;/pre&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;script&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;body&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;html&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:61fb8012-ecda-484a-ac99-f92137a9bb84" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/jQuery" rel="tag"&gt;jQuery&lt;/a&gt;,&lt;a href="http://technorati.com/tags/JavaScript" rel="tag"&gt;JavaScript&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Sharing Sharepoint for the Holidays with Holliday</title><link>http://www.willstrohl.com/Blog/PostId/482/Sharing-Sharepoint-for-the-Holidays-with-Holliday</link><summary /><category>ASP.Net</category><pubDate>Fri, 23 Oct 2009 13:37:00 GMT</pubDate><description>&lt;p&gt;&lt;a href="/Portals/1/Blog/Files/5/509/WLW-SharingSharepointfortheHolidayswithHolli_855A-onetug_palm_100x134_2.gif"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 5px 5px 0px; display: inline; border-top: 0px; border-right: 0px" title="onetug_palm_100x134" border="0" alt="onetug_palm_100x134" align="left" src="/Portals/1/Blog/Files/5/509/WLW-SharingSharepointfortheHolidayswithHolli_855A-onetug_palm_100x134_thumb.gif" width="100" height="134" /&gt;&lt;/a&gt; Well, that’s the title that our Director of Education, James Taylor (JT), at the &lt;a href="http://www.onetug.org" target="_blank"&gt;Orlando .Net User Group&lt;/a&gt; has hashed up.&amp;#160; I like it.&amp;#160; It’s catchy and fun.&amp;#160; December user group meetings tend to fade in terms of attendance, so having a catchy title for the meeting might help.&amp;#160; Anyhow, this meeting is going to be about SharePoint, and is featuring &lt;a href="http://johnholliday.net" target="_blank"&gt;John Holliday&lt;/a&gt;.&amp;#160; If you do not know who John is, he is a &lt;a href="https://mvp.support.microsoft.com/profile/John.Holliday" target="_blank"&gt;Microsoft SharePoint MVP&lt;/a&gt; and author on the topic.&lt;/p&gt;  &lt;p&gt;In doing a bit of research on John, I found that he has not written just one book, but 2 books, and is part of the &lt;a href="http://www.amazon.com/gp/product/0470431946?ie=UTF8&amp;amp;tag=themigblo-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0470431946" target="_blank"&gt;Microsoft SharePoint 2007 Wrox Box&lt;/a&gt;.&amp;#160; Here is a run down of the books that he’s written and co-written:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.amazon.com/gp/product/0470287624?ie=UTF8&amp;amp;tag=themigblo-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0470287624" target="_blank"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Wrox Professional SharePoint 2007 Records Management Development" border="0" alt="Wrox Professional SharePoint 2007 Records Management Development" src="/Portals/1/Blog/Files/5/509/WLW-SharingSharepointfortheHolidayswithHolli_855A-Wrox_Pro_SharePoint_2007_3.jpg" width="195" height="244" /&gt;&lt;/a&gt;&amp;#160; &lt;a href="http://www.amazon.com/gp/product/0470117567?ie=UTF8&amp;amp;tag=themigblo-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0470117567" target="_blank"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="Wrox Professional SharePoint 2007 Development" border="0" alt="Wrox Professional SharePoint 2007 Development" src="/Portals/1/Blog/Files/5/509/WLW-SharingSharepointfortheHolidayswithHolli_855A-Wrox_Pro_SharePoint_2007_Development_3.jpg" width="194" height="244" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.amazon.com/gp/product/0470431946?ie=UTF8&amp;amp;tag=themigblo-20&amp;amp;linkCode=as2&amp;amp;camp=1789&amp;amp;creative=390957&amp;amp;creativeASIN=0470431946" target="_blank"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 5px 5px 0px; display: inline; border-top: 0px; border-right: 0px" title="Microsoft SharePoint 2007 Wrox Box" border="0" alt="Microsoft SharePoint 2007 Wrox Box" align="left" src="/Portals/1/Blog/Files/5/509/WLW-SharingSharepointfortheHolidayswithHolli_855A-Wrox_SharePoint_WroxBox_3.jpg" width="244" height="183" /&gt;&lt;/a&gt;If you’re not impressed with John already, I don’t know what will impress you.&amp;#160; :)&amp;#160; Maybe these other details will help…&lt;/p&gt;  &lt;p&gt;John is a graduate of Harvard and has been developing software for over 25 years.&amp;#160; Some of his clients include IBM, Kodak, and AutoDesk.&amp;#160; He created a specialized computing language for constructing legal expert systems.&amp;#160; In his spare time, he co-founded the &lt;a href="http://www.worksofwonder.org" target="_blank"&gt;Works of Wonder International&lt;/a&gt; and the &lt;a href="http://www.artofliving.org" target="_blank"&gt;Art of Living Foundation&lt;/a&gt; with his wife.&lt;/p&gt;  &lt;p&gt;Come on…&amp;#160; You’re impressed now, right?&lt;/p&gt;  &lt;p&gt;We are not yet sure what his session at the &lt;a href="http://www.onetug.org" target="_blank"&gt;ONETUG&lt;/a&gt; will be focused on yet, but I will let you know when I find out.&amp;#160; Until then, mark your calendars for &lt;a href="http://johnholliday.net" target="_blank"&gt;John Holliday's&lt;/a&gt; session on December 17, 2009.&amp;#160; It is sure to be a great time!&lt;/p&gt;  &lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:e14f05dc-84b1-425c-bcd6-22a35a96737d" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Orlando+.Net+User+Group" rel="tag"&gt;Orlando .Net User Group&lt;/a&gt;,&lt;a href="http://technorati.com/tags/ONETUG" rel="tag"&gt;ONETUG&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Community" rel="tag"&gt;Community&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Events" rel="tag"&gt;Events&lt;/a&gt;,&lt;a href="http://technorati.com/tags/User+Group" rel="tag"&gt;User Group&lt;/a&gt;,&lt;a href="http://technorati.com/tags/SharePoint" rel="tag"&gt;SharePoint&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Using jQuery to Search an HTML Table</title><link>http://www.willstrohl.com/Blog/PostId/468/Using-jQuery-to-Search-an-HTML-Table</link><summary /><category>ASP.Net</category><pubDate>Thu, 24 Sep 2009 21:43:00 GMT</pubDate><description>&lt;p&gt;Whenever I provide a listing of records, I always provide a way to search those records.&amp;#160; Typically, the chosen display for these records comes in the form of an HTML table.&amp;#160; My search usually consists of a little T-SQL magic in a stored procedure, which would require a PostBack of some kind to the web server to retrieve the filtered records.&amp;#160; This has never been efficient.&amp;#160; While thinking of this concept earlier today, I had an epiphany.&amp;#160; Why not use &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt;?&lt;/p&gt;  &lt;p&gt;I could use &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; to search the records in one of two ways.&amp;#160; First, the obvious way is to use the built-in AJAX feature in &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; to perform the search on the database, and then return just the data needed to change the HTML mark-up on the fly.&amp;#160; While that is cool, my current listing of records is not that large.&amp;#160; I wanted a faster solution.&lt;/p&gt;  &lt;p&gt;I chose to instead use &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; to filter out the rendered HTML table rows that do not match the given query.&amp;#160; Since &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; has an extensive and flexible selection of &lt;a href="http://docs.jquery.com/Selectors" target="_blank"&gt;selectors&lt;/a&gt;, this was going to be both fun and easy!&lt;/p&gt;  &lt;p&gt;I remembered that the &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; library has a &lt;a href="http://docs.jquery.com/Selectors/contains#text" target="_blank"&gt;:contains(text)&lt;/a&gt; selector that allows you to select HTML tags by checking to see if the tag contains the given text.&amp;#160; For instance, the example below uses the contains selector to highlight the bullet with &lt;a href="http://www.dotnetnuke.com" target="_blank"&gt;DotNetNuke®&lt;/a&gt; in the bullet.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;ASP.Net &lt;/li&gt;    &lt;li&gt;JavaScript &lt;/li&gt;    &lt;li&gt;T-SQL &lt;/li&gt;    &lt;li&gt;VB.Net &lt;/li&gt;    &lt;li&gt;DotNetNuke &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; code necessary to make that happen is a single line of code:&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; min-height: 40px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;     &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;jQuery(&lt;span style="color: #006080"&gt;'li:contains(\'DotNetNuke\')'&lt;/span&gt;).css(&lt;span style="color: #006080"&gt;'color'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'#0000ff'&lt;/span&gt;).css(&lt;span style="color: #006080"&gt;'font-weight'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'bold'&lt;/span&gt;);&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;Pretty cool, huh?&amp;#160; Kind of.&amp;#160; Unfortunately, I found out the hard way that the &lt;a href="http://docs.jquery.com/Selectors/contains#text" target="_blank"&gt;:contains(text)&lt;/a&gt; selector is case-sensitive.&amp;#160; Thinking about the previous example, this means that using “dotnetnuke” in the contains selector would not have worked.&amp;#160; Fortunately, I found a great &lt;a href="http://www.west-wind.com/weblog/posts/519980.aspx" target="_blank"&gt;blog post by Rick Strahl that gave a case-insensitive version of the selector&lt;/a&gt;.&amp;#160; It worked like a charm!&amp;#160; (&lt;em&gt;And also showed me the fact that my idea wasn’t new. D’oh!&lt;/em&gt;)&lt;/p&gt;

&lt;h3&gt;An Example&lt;/h3&gt;

&lt;p&gt;Expanding on this standard functionality, I created an HTML table with a listing of data records, and a search box above it to filter the results.&amp;#160; When you enter text into the textbox, the table automatically filters out rows that do not contain the text you’re searching for.&amp;#160; Here’s an example:&lt;/p&gt;

&lt;p style="text-align: right; width: 500px"&gt;&lt;span style="font-weight: bold"&gt;Search:&lt;/span&gt; &lt;input id="txtSearch" name="txtSearch" /&gt;&amp;#160; &lt;img style="width: 14px; height: 14px" id="imgSearch" title="Cancel Search" alt="Cancel Search" src="/images/cancel.gif" /&gt; &lt;/p&gt;

&lt;table style="width: 500px" id="tblSearch" border="1" cellspacing="0" cellpadding="2"&gt;&lt;tbody&gt;
    &lt;tr style="font-weight: bold"&gt;
      &lt;td&gt;First&lt;/td&gt;

      &lt;td&gt;Last&lt;/td&gt;

      &lt;td&gt;Address&lt;/td&gt;

      &lt;td&gt;City&lt;/td&gt;

      &lt;td&gt;State&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;John&lt;/td&gt;

      &lt;td&gt;Dough&lt;/td&gt;

      &lt;td&gt;123 Main Street&lt;/td&gt;

      &lt;td&gt;Orlando&lt;/td&gt;

      &lt;td&gt;Florida&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;Jane&lt;/td&gt;

      &lt;td&gt;Dough&lt;/td&gt;

      &lt;td&gt;4367 South Washington Avenue&lt;/td&gt;

      &lt;td&gt;Bartow&lt;/td&gt;

      &lt;td&gt;California&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;Bart&lt;/td&gt;

      &lt;td&gt;Thompson&lt;/td&gt;

      &lt;td&gt;531 Townsend Circle&lt;/td&gt;

      &lt;td&gt;Atlanta&lt;/td&gt;

      &lt;td&gt;Georgia&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;Sherry&lt;/td&gt;

      &lt;td&gt;Simpson&lt;/td&gt;

      &lt;td&gt;3346 Presario Lane, Apt. 123&lt;/td&gt;

      &lt;td&gt;Seattle&lt;/td&gt;

      &lt;td&gt;Washington&lt;/td&gt;
    &lt;/tr&gt;

    &lt;tr&gt;
      &lt;td&gt;Matt&lt;/td&gt;

      &lt;td&gt;Damon&lt;/td&gt;

      &lt;td&gt;300 Pounds Street&lt;/td&gt;

      &lt;td&gt;Boston&lt;/td&gt;

      &lt;td&gt;Massachusetts&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;&lt;/table&gt;

&lt;p&gt;I don’t know about you, but I think that’s AWESOME!&amp;#160; Some features that I had put into this initially was a &lt;em&gt;dynamic cancel search image&lt;/em&gt;, &lt;em&gt;cancel search by pressing ESC&lt;/em&gt;, and &lt;em&gt;displaying a message when the search has no results&lt;/em&gt;.&lt;/p&gt;

&lt;h3&gt;The Code Review&lt;/h3&gt;

&lt;p&gt;It was actually quite easy.&amp;#160; Here is a breakdown of the code used to make this happen.&amp;#160; (&lt;em&gt;Make sure you look in the code comments to have an explanation of what I am doing and why.&lt;/em&gt;)&lt;/p&gt;

&lt;p&gt;First, I created a function to reset the search, that could be used in a number of places as needed.&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;function&lt;/span&gt; resetSearch() {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// clear the textbox&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).val(&lt;span style="color: #006080"&gt;''&lt;/span&gt;);&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// show all table rows&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    jQuery(&lt;span style="color: #006080"&gt;'#tblSearch tr'&lt;/span&gt;).show();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// remove any no records rows&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    jQuery(&lt;span style="color: #006080"&gt;'.norecords'&lt;/span&gt;).remove();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// remove the cancel search image&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    jQuery(&lt;span style="color: #006080"&gt;'#imgSearch'&lt;/span&gt;).hide();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// make sure we re-focus on the textbox for usability&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).focus();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;}&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Next, I wrapped all of my code in a &lt;a href="http://docs.jquery.com/Events/ready#fn" target="_blank"&gt;.ready()&lt;/a&gt; block to make sure it executes when it is supposed to, beginning with the initial steps to set-up the UI.&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;// hide the cancel search image&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;jQuery(&lt;span style="color: #006080"&gt;'#imgSearch'&lt;/span&gt;).hide();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;// reset the search when the cancel image is clicked&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;jQuery(&lt;span style="color: #006080"&gt;'#imgSearch'&lt;/span&gt;).click(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    resetSearch();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;});&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;// cancel the search if the user presses the ESC key&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).keyup(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;(&lt;span style="color: #0000ff"&gt;event&lt;/span&gt;) {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (&lt;span style="color: #0000ff"&gt;event&lt;/span&gt;.keyCode == 27) {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        resetSearch();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    }&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;});&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Now that I had everything set-up, I was able to write the real magic of the search.&amp;#160; This is where the search gets executed and handled.&amp;#160; This is also in the&lt;a href="http://docs.jquery.com/Events/ready#fn" target="_blank"&gt;.ready()&lt;/a&gt; block.&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;// execute the search&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).keyup(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// only search when there are 3 or more characters in the textbox&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).val().length &amp;gt; 2) {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #008000"&gt;// hide all rows&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        jQuery(&lt;span style="color: #006080"&gt;'#tblSearch tr'&lt;/span&gt;).hide();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #008000"&gt;// show the header row&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        jQuery(&lt;span style="color: #006080"&gt;'#tblSearch tr:first'&lt;/span&gt;).show();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #008000"&gt;// show the matching rows (using the containsNoCase from Rick Strahl)&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        jQuery(&lt;span style="color: #006080"&gt;'#tblSearch tr td:containsNoCase(\''&lt;/span&gt; + jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).val() + &lt;span style="color: #006080"&gt;'\')'&lt;/span&gt;).parent().show();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #008000"&gt;// show the cancel search image&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        jQuery(&lt;span style="color: #006080"&gt;'#imgSearch'&lt;/span&gt;).show();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    }&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).val().length == 0) {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #008000"&gt;// if the user removed all of the text, reset the search&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        resetSearch();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    }&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #008000"&gt;// if there were no matching rows, tell the user&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (jQuery(&lt;span style="color: #006080"&gt;'#tblSearch tr:visible'&lt;/span&gt;).length == 1) {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #008000"&gt;// remove the norecords row if it already exists&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        jQuery(&lt;span style="color: #006080"&gt;'.norecords'&lt;/span&gt;).remove();&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #008000"&gt;// add the norecords row&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        jQuery(&lt;span style="color: #006080"&gt;'#tblSearch'&lt;/span&gt;).append(&lt;span style="color: #006080"&gt;'&amp;lt;tr class=&amp;quot;norecords&amp;quot;&amp;gt;&amp;lt;td colspan=&amp;quot;5&amp;quot; class=&amp;quot;Normal&amp;quot;&amp;gt;No records were found&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;'&lt;/span&gt;);&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    }&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;});&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;h3&gt;The Full Code Snippet&lt;/h3&gt;

&lt;p&gt;Here is the full snippet of code that you can use to try this yourself.&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;html&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;head&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;Untitled&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;title&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;script&lt;/span&gt; &lt;span style="color: #ff0000"&gt;language&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;javascript&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;type&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;text/javascript&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;src&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;/Resources/Shared/Scripts/jquery/jquery.min.js&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;script&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   1:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   2:&lt;/span&gt; &amp;lt;/head&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   3:&lt;/span&gt; &amp;lt;body&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   4:&lt;/span&gt;     &amp;lt;p style=&lt;span style="color: #006080"&gt;&amp;quot;text-align:right;width:500px;&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   5:&lt;/span&gt;         &amp;lt;span style=&lt;span style="color: #006080"&gt;&amp;quot;font-weight:bold;&amp;quot;&lt;/span&gt;&amp;gt;Search:&amp;lt;/span&amp;gt; &amp;lt;input type=&lt;span style="color: #006080"&gt;&amp;quot;text&amp;quot;&lt;/span&gt; id=&lt;span style="color: #006080"&gt;&amp;quot;txtSearch&amp;quot;&lt;/span&gt; name=&lt;span style="color: #006080"&gt;&amp;quot;txtSearch&amp;quot;&lt;/span&gt; maxlength=&lt;span style="color: #006080"&gt;&amp;quot;50&amp;quot;&lt;/span&gt; /&amp;gt;&amp;amp;nbsp; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   6:&lt;/span&gt;         &amp;lt;img id=&lt;span style="color: #006080"&gt;&amp;quot;imgSearch&amp;quot;&lt;/span&gt; src=&lt;span style="color: #006080"&gt;&amp;quot;/images/cancel.gif&amp;quot;&lt;/span&gt; alt=&lt;span style="color: #006080"&gt;&amp;quot;Cancel Search&amp;quot;&lt;/span&gt; title=&lt;span style="color: #006080"&gt;&amp;quot;Cancel Search&amp;quot;&lt;/span&gt; style=&lt;span style="color: #006080"&gt;&amp;quot;width:150px;width:14px;height:14px;&amp;quot;&lt;/span&gt; /&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   7:&lt;/span&gt;     &amp;lt;/p&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   8:&lt;/span&gt;     &amp;lt;table id=&lt;span style="color: #006080"&gt;&amp;quot;tblSearch&amp;quot;&lt;/span&gt; cellpadding=&lt;span style="color: #006080"&gt;&amp;quot;2&amp;quot;&lt;/span&gt; cellspacing=&lt;span style="color: #006080"&gt;&amp;quot;0&amp;quot;&lt;/span&gt; border=&lt;span style="color: #006080"&gt;&amp;quot;1&amp;quot;&lt;/span&gt; style=&lt;span style="color: #006080"&gt;&amp;quot;width:500px;&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;   9:&lt;/span&gt;         &amp;lt;tr style=&lt;span style="color: #006080"&gt;&amp;quot;font-weight:bold;&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  10:&lt;/span&gt;             &amp;lt;td&amp;gt;First&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  11:&lt;/span&gt;             &amp;lt;td&amp;gt;Last&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  12:&lt;/span&gt;             &amp;lt;td&amp;gt;Address&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  13:&lt;/span&gt;             &amp;lt;td&amp;gt;City&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  14:&lt;/span&gt;             &amp;lt;td&amp;gt;State&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  15:&lt;/span&gt;         &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  16:&lt;/span&gt;         &amp;lt;tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  17:&lt;/span&gt;             &amp;lt;td&amp;gt;John&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  18:&lt;/span&gt;             &amp;lt;td&amp;gt;Dough&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  19:&lt;/span&gt;             &amp;lt;td&amp;gt;123 Main Street&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  20:&lt;/span&gt;             &amp;lt;td&amp;gt;Orlando&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  21:&lt;/span&gt;             &amp;lt;td&amp;gt;Florida&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  22:&lt;/span&gt;         &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  23:&lt;/span&gt;         &amp;lt;tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  24:&lt;/span&gt;             &amp;lt;td&amp;gt;Jane&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  25:&lt;/span&gt;             &amp;lt;td&amp;gt;Dough&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  26:&lt;/span&gt;             &amp;lt;td&amp;gt;4367 South Washington Avenue&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  27:&lt;/span&gt;             &amp;lt;td&amp;gt;Bartow&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  28:&lt;/span&gt;             &amp;lt;td&amp;gt;California&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  29:&lt;/span&gt;         &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  30:&lt;/span&gt;         &amp;lt;tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  31:&lt;/span&gt;             &amp;lt;td&amp;gt;Bart&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  32:&lt;/span&gt;             &amp;lt;td&amp;gt;Thompson&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  33:&lt;/span&gt;             &amp;lt;td&amp;gt;531 Townsend Circle&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  34:&lt;/span&gt;             &amp;lt;td&amp;gt;Atlanta&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  35:&lt;/span&gt;             &amp;lt;td&amp;gt;Georgia&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  36:&lt;/span&gt;         &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  37:&lt;/span&gt;         &amp;lt;tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  38:&lt;/span&gt;             &amp;lt;td&amp;gt;Sherry&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  39:&lt;/span&gt;             &amp;lt;td&amp;gt;Simpson&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  40:&lt;/span&gt;             &amp;lt;td&amp;gt;3346 Presario Lane, Apt. 123&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  41:&lt;/span&gt;             &amp;lt;td&amp;gt;Seattle&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  42:&lt;/span&gt;             &amp;lt;td&amp;gt;Washington&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  43:&lt;/span&gt;         &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  44:&lt;/span&gt;         &amp;lt;tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  45:&lt;/span&gt;             &amp;lt;td&amp;gt;Matt&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  46:&lt;/span&gt;             &amp;lt;td&amp;gt;Damon&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  47:&lt;/span&gt;             &amp;lt;td&amp;gt;300 Pounds Street&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  48:&lt;/span&gt;             &amp;lt;td&amp;gt;Boston&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  49:&lt;/span&gt;             &amp;lt;td&amp;gt;Massachusetts&amp;lt;/td&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  50:&lt;/span&gt;         &amp;lt;/tr&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  51:&lt;/span&gt;     &amp;lt;/table&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  52:&lt;/span&gt;     &amp;lt;script language=&lt;span style="color: #006080"&gt;&amp;quot;javascript&amp;quot;&lt;/span&gt; type=&lt;span style="color: #006080"&gt;&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&amp;gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  53:&lt;/span&gt;         jQuery.expr[&lt;span style="color: #006080"&gt;&amp;quot;:&amp;quot;&lt;/span&gt;].containsNoCase = &lt;span style="color: #0000ff"&gt;function&lt;/span&gt;(el, i, m) {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  54:&lt;/span&gt;             &lt;span style="color: #0000ff"&gt;var&lt;/span&gt; search = m[3];&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  55:&lt;/span&gt;             &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (!search) &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; &lt;span style="color: #0000ff"&gt;false&lt;/span&gt;;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  56:&lt;/span&gt;             &lt;span style="color: #0000ff"&gt;return&lt;/span&gt; eval(&lt;span style="color: #006080"&gt;&amp;quot;/&amp;quot;&lt;/span&gt; + search + &lt;span style="color: #006080"&gt;&amp;quot;/i&amp;quot;&lt;/span&gt;).test($(el).text());&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  57:&lt;/span&gt;         };&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  58:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  59:&lt;/span&gt;         jQuery(document).ready(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  60:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// used for the first example in the blog post&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  61:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'li:contains(\'DotNetNuke\')'&lt;/span&gt;).css(&lt;span style="color: #006080"&gt;'color'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'#0000ff'&lt;/span&gt;).css(&lt;span style="color: #006080"&gt;'font-weight'&lt;/span&gt;, &lt;span style="color: #006080"&gt;'bold'&lt;/span&gt;);&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  62:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  63:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// hide the cancel search image&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  64:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'#imgSearch'&lt;/span&gt;).hide();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  65:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  66:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// reset the search when the cancel image is clicked&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  67:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'#imgSearch'&lt;/span&gt;).click(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  68:&lt;/span&gt;                 resetSearch();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  69:&lt;/span&gt;             });&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  70:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  71:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// cancel the search if the user presses the ESC key&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  72:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).keyup(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;(&lt;span style="color: #0000ff"&gt;event&lt;/span&gt;) {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  73:&lt;/span&gt;                 &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (&lt;span style="color: #0000ff"&gt;event&lt;/span&gt;.keyCode == 27) {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  74:&lt;/span&gt;                     resetSearch();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  75:&lt;/span&gt;                 }&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  76:&lt;/span&gt;             });&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  77:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  78:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// execute the search&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  79:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).keyup(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  80:&lt;/span&gt;                 &lt;span style="color: #008000"&gt;// only search when there are 3 or more characters in the textbox&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  81:&lt;/span&gt;                 &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).val().length &amp;gt; 2) {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  82:&lt;/span&gt;                     &lt;span style="color: #008000"&gt;// hide all rows&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  83:&lt;/span&gt;                     jQuery(&lt;span style="color: #006080"&gt;'#tblSearch tr'&lt;/span&gt;).hide();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  84:&lt;/span&gt;                     &lt;span style="color: #008000"&gt;// show the header row&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  85:&lt;/span&gt;                     jQuery(&lt;span style="color: #006080"&gt;'#tblSearch tr:first'&lt;/span&gt;).show();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  86:&lt;/span&gt;                     &lt;span style="color: #008000"&gt;// show the matching rows (using the containsNoCase from Rick Strahl)&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  87:&lt;/span&gt;                     jQuery(&lt;span style="color: #006080"&gt;'#tblSearch tr td:containsNoCase(\''&lt;/span&gt; + jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).val() + &lt;span style="color: #006080"&gt;'\')'&lt;/span&gt;).parent().show();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  88:&lt;/span&gt;                     &lt;span style="color: #008000"&gt;// show the cancel search image&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  89:&lt;/span&gt;                     jQuery(&lt;span style="color: #006080"&gt;'#imgSearch'&lt;/span&gt;).show();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  90:&lt;/span&gt;                 }&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  91:&lt;/span&gt;                 &lt;span style="color: #0000ff"&gt;else&lt;/span&gt; &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).val().length == 0) {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  92:&lt;/span&gt;                     &lt;span style="color: #008000"&gt;// if the user removed all of the text, reset the search&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  93:&lt;/span&gt;                     resetSearch();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  94:&lt;/span&gt;                 }&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  95:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  96:&lt;/span&gt;                 &lt;span style="color: #008000"&gt;// if there were no matching rows, tell the user&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  97:&lt;/span&gt;                 &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (jQuery(&lt;span style="color: #006080"&gt;'#tblSearch tr:visible'&lt;/span&gt;).length == 1) {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  98:&lt;/span&gt;                     &lt;span style="color: #008000"&gt;// remove the norecords row if it already exists&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt;  99:&lt;/span&gt;                     jQuery(&lt;span style="color: #006080"&gt;'.norecords'&lt;/span&gt;).remove();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 100:&lt;/span&gt;                     &lt;span style="color: #008000"&gt;// add the norecords row&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 101:&lt;/span&gt;                     jQuery(&lt;span style="color: #006080"&gt;'#tblSearch'&lt;/span&gt;).append(&lt;span style="color: #006080"&gt;'&amp;lt;tr class=&amp;quot;norecords&amp;quot;&amp;gt;&amp;lt;td colspan=&amp;quot;5&amp;quot; class=&amp;quot;Normal&amp;quot;&amp;gt;No records were found&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;'&lt;/span&gt;);&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 102:&lt;/span&gt;                 }&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 103:&lt;/span&gt;             });&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 104:&lt;/span&gt;         });&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 105:&lt;/span&gt;&amp;#160; &lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 106:&lt;/span&gt;         &lt;span style="color: #0000ff"&gt;function&lt;/span&gt; resetSearch() {&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 107:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// clear the textbox&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 108:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).val(&lt;span style="color: #006080"&gt;''&lt;/span&gt;);&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 109:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// show all table rows&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 110:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'#tblSearch tr'&lt;/span&gt;).show();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 111:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// remove any no records rows&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 112:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'.norecords'&lt;/span&gt;).remove();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 113:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// remove the cancel search image&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 114:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'#imgSearch'&lt;/span&gt;).hide();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 115:&lt;/span&gt;             &lt;span style="color: #008000"&gt;// make sure we re-focus on the textbox for usability&lt;/span&gt;&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 116:&lt;/span&gt;             jQuery(&lt;span style="color: #006080"&gt;'#txtSearch'&lt;/span&gt;).focus();&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 117:&lt;/span&gt;         }&lt;/pre&gt;&lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #606060"&gt; 118:&lt;/span&gt;     &lt;/pre&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;script&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;body&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;html&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:8aa11e48-12a6-4305-aa56-620b29ac8615" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/jQuery" rel="tag"&gt;jQuery&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Search" rel="tag"&gt;Search&lt;/a&gt;&lt;/div&gt;
&lt;script language="javascript" type="text/javascript"&gt;
        jQuery.expr[":"].containsNoCase = function(el, i, m) {
            var search = m[3];
            if (!search) return false;
            return eval("/" + search + "/i").test($(el).text());
        };

        jQuery(document).ready(function() {
            // used for the first example in the blog post
            jQuery('li:contains(\'DotNetNuke\')').css('color', '#0000ff').css('font-weight', 'bold');

            // hide the cancel search image
            jQuery('#imgSearch').hide();

            // reset the search when the cancel image is clicked
            jQuery('#imgSearch').click(function() {
                resetSearch();
            });

            // cancel the search if the user presses the ESC key
            jQuery('#txtSearch').keyup(function(event) {
                if (event.keyCode == 27) {
                    resetSearch();
                }
            });

            // execute the search
            jQuery('#txtSearch').keyup(function() {
                // only search when there are 3 or more characters in the textbox
                if (jQuery('#txtSearch').val().length &gt; 2) {
                    // hide all rows
                    jQuery('#tblSearch tr').hide();
                    // show the header row
                    jQuery('#tblSearch tr:first').show();
                    // show the matching rows (using the containsNoCase from Rick Strahl)
                    jQuery('#tblSearch tr td:containsNoCase(\'' + jQuery('#txtSearch').val() + '\')').parent().show();
                    // show the cancel search image
                    jQuery('#imgSearch').show();
                }
                else if (jQuery('#txtSearch').val().length == 0) {
                    // if the user removed all of the text, reset the search
                    resetSearch();
                }

                // if there were no matching rows, tell the user
                if (jQuery('#tblSearch tr:visible').length == 1) {
                    // remove the norecords row if it already exists
                    jQuery('.norecords').remove();
                    // add the norecords row
                    jQuery('#tblSearch').append('&lt;tr class="norecords"&gt;&lt;td colspan="5" class="Normal"&gt;No records were found&lt;/td&gt;&lt;/tr&gt;');
                }
            });
        });

        function resetSearch() {
            // clear the textbox
            jQuery('#txtSearch').val('');
            // show all table rows
            jQuery('#tblSearch tr').show();
            // remove any no records rows
            jQuery('.norecords').remove();
            // remove the cancel search image
            jQuery('#imgSearch').hide();
            // make sure we re-focus on the textbox for usability
            jQuery('#txtSearch').focus();
        }
    &lt;/script&gt;</description></item><item><title>Wizard Control: Programmatically Access the HeaderTemplate Child Controls</title><link>http://www.willstrohl.com/Blog/PostId/461/Wizard-Control-Programmatically-Access-the-Header</link><summary /><category>ASP.Net</category><pubDate>Tue, 15 Sep 2009 15:29:00 GMT</pubDate><description>&lt;p&gt;I just began using the &lt;a href="http://msdn.microsoft.com/en-us/library/fs0za4w6.aspx" target="_blank"&gt;Wizard Web Server Control&lt;/a&gt; for the first time recently.&amp;#160; (Can you believe it?)&amp;#160; As it turns out, this control is very useful, and it allows you to easily manage short, wizard-like workflows within ASP.Net.&amp;#160; I am using this control inside of a new custom &lt;a href="http://www.dotnetnuke.com" target="_blank"&gt;DotNetNuke®&lt;/a&gt; module I am writing, where I take a visitor through an application process.&amp;#160; &lt;/p&gt;  &lt;p&gt;One of the features of the Wizard control is the &lt;font face="Courier New"&gt;HeaderTemplate&lt;/font&gt;.&amp;#160; The &lt;font face="Courier New"&gt;HeaderTemplate&lt;/font&gt; allows you to place a header section at the top of the control throughout the defined steps.&amp;#160; This is useful for usability to give you another way to visually tell the visitor what they are doing, or what step they’re on.&amp;#160; Here is a simplistic example of the control, using the &lt;font face="Courier New"&gt;HeaderTemplate&lt;/font&gt; feature.&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;     &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:Wizard&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;wizSignUp&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ActiveStepIndex&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;0&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;DisplaySideBar&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;HeaderTemplate&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:Label&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;lblHeader&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;HeaderTemplate&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;WizardSteps&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:WizardStep&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;wizStep_0&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;AllowReturn&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;true&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;StepType&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;Start&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;h3&lt;/span&gt; &lt;span style="color: #ff0000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;wizHeaderStep0&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;p&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:Label&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;lblWizStep_0&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;p&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:WizardStep&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:WizardStep&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;wizStep_1&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;AllowReturn&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;false&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;StepType&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;Step&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;h3&lt;/span&gt; &lt;span style="color: #ff0000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;wizHeaderStep1&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;p&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:TextBox&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;txtWizStep_1&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ReadOnly&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;true&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;p&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;p&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:CheckBox&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;chkWizStep_1&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;TextAlign&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;Right&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;p&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:WizardStep&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:WizardStep&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;wizStep_2&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;AllowReturn&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;false&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;StepType&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;Step&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;h3&lt;/span&gt; &lt;span style="color: #ff0000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;wizHeaderStep2&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;p&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:Label&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;lblWizStep_2&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;p&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:WizardStep&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:WizardStep&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;wizStep_03&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;AllowReturn&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;false&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;StepType&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;Finish&amp;quot;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;h3&lt;/span&gt; &lt;span style="color: #ff0000"&gt;id&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;wizHeaderStep3&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;            &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;p&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:Label&lt;/span&gt; &lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;lblWizStep_3&amp;quot;&lt;/span&gt; &lt;span style="color: #ff0000"&gt;runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;=&amp;quot;server&amp;quot;&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;p&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:WizardStep&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;WizardSteps&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:Wizard&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;In the &lt;font face="Courier New"&gt;HeaderTemplate&lt;/font&gt;, I have a simple Label control.&amp;#160; This could have been anything, as complicated as a table with a variety of controls.&lt;/p&gt;

&lt;p&gt;What’s not immediately clear in this example though, is how to access the properties of the Label control programmatically.&amp;#160; For example, in DNN, I would obviously want to Localize the text in the label.&amp;#160; There unfortunately, is not an event to plug into like we do with controls such as the GridView control to bind the text of the Label.&lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;However, the solution to access the controls in the &lt;font face="Courier New"&gt;HeaderTemplate&lt;/font&gt; is much more simple than you might think.&amp;#160; All you have to do is know that there is a child control created at runtime, called the &lt;font face="Courier New"&gt;HeaderContainer&lt;/font&gt;.&amp;#160; First off, I don’t think anyone knows that the &lt;font face="Courier New"&gt;HeaderContainer&lt;/font&gt; control exists without some thorough investigation, a good web search, or being told.&lt;/p&gt;

&lt;p&gt;Here is an example of binding to my Label control, which I have done in the &lt;font face="Courier New"&gt;Page_Load&lt;/font&gt; event in my example.&amp;#160; &lt;/p&gt;

&lt;p&gt;&lt;em&gt;There are obviously more and better places to bind to this control, depending on your use case and business requirements.&amp;#160; Remember, this is an example.&lt;/em&gt;&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objControl &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Object&lt;/span&gt; = &lt;span style="color: #0000ff"&gt;Me&lt;/span&gt;.wizSignUp.FindControl(&lt;span style="color: #006080"&gt;&amp;quot;HeaderContainer&amp;quot;&lt;/span&gt;).FindControl(&lt;span style="color: #006080"&gt;&amp;quot;lblHeader&amp;quot;&lt;/span&gt;)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;If&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Not&lt;/span&gt; objControl &lt;span style="color: #0000ff"&gt;Is&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Nothing&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Then&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; lblControl &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; &lt;span style="color: #0000ff"&gt;New&lt;/span&gt; System.Web.UI.WebControls.Label&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    lblControl = &lt;span style="color: #0000ff"&gt;CType&lt;/span&gt;(objControl, System.Web.UI.WebControls.Label)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    lblControl.Text = Localization.GetString(&lt;span style="color: #006080"&gt;&amp;quot;WizardHeader.Text&amp;quot;&lt;/span&gt;, &lt;span style="color: #0000ff"&gt;Me&lt;/span&gt;.LocalResourceFile)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;End&lt;/span&gt; If&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;There is another variation of this that might be of more use to you, and maybe even faster (I haven’t benchmarked it).&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; objControl &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Object&lt;/span&gt; = &lt;span style="color: #0000ff"&gt;Me&lt;/span&gt;.wizSignUp.FindControl(&lt;span style="color: #006080"&gt;&amp;quot;HeaderContainer$lblHeader&amp;quot;&lt;/span&gt;)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;If&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Not&lt;/span&gt; objControl &lt;span style="color: #0000ff"&gt;Is&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Nothing&lt;/span&gt; &lt;span style="color: #0000ff"&gt;Then&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;Dim&lt;/span&gt; lblControl &lt;span style="color: #0000ff"&gt;As&lt;/span&gt; &lt;span style="color: #0000ff"&gt;New&lt;/span&gt; System.Web.UI.WebControls.Label&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    lblControl = &lt;span style="color: #0000ff"&gt;CType&lt;/span&gt;(objControl, System.Web.UI.WebControls.Label)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    lblControl.Text = Localization.GetString(&lt;span style="color: #006080"&gt;&amp;quot;WizardHeader.Text&amp;quot;&lt;/span&gt;, &lt;span style="color: #0000ff"&gt;Me&lt;/span&gt;.LocalResourceFile)&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;End&lt;/span&gt; If&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;If you notice, we do not directly reference the &lt;font face="Courier New"&gt;HeaderContainer&lt;/font&gt; control, but instead include it in our control collection to query, through the control name, &lt;font face="Courier New"&gt;HeaderContainer$lblHeader&lt;/font&gt;.&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:9dc6a211-0e11-40cf-a900-e18ffdf4cdf0" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/DotNetNuke" rel="tag"&gt;DotNetNuke&lt;/a&gt;,&lt;a href="http://technorati.com/tags/DNN" rel="tag"&gt;DNN&lt;/a&gt;,&lt;a href="http://technorati.com/tags/DNN+Blogs" rel="tag"&gt;DNN Blogs&lt;/a&gt;,&lt;a href="http://technorati.com/tags/ASP.Net" rel="tag"&gt;ASP.Net&lt;/a&gt;,&lt;a href="http://technorati.com/tags/Localization" rel="tag"&gt;Localization&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Unpacking Compressed JavaScript Code</title><link>http://www.willstrohl.com/Blog/PostId/412/Unpacking-Compressed-JavaScript-Code</link><summary /><category>ASP.Net</category><pubDate>Tue, 23 Jun 2009 15:31:00 GMT</pubDate><description>&lt;p&gt;I am working on a project where we have an outside party developing a &lt;a href="http://www.dotnetnuke.com" target="_blank"&gt;DotNetNuke®&lt;/a&gt; module for us that relies almost entirely on client side code.&amp;#160; When I way client-side code, I mean JavaScript, the &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt; library, and various &lt;a href="http://plugins.jquery.com" target="_blank"&gt;jQuery plug-ins&lt;/a&gt;.&amp;#160; The module itself is really a beautiful thing.&amp;#160; It is actually able to be used outside of DNN without any problems at all.&lt;/p&gt;  &lt;p&gt;Well, like any other project in the history of time, things go wrong.&amp;#160; This time, I need to troubleshoot part of the the JavaScript chain of code to find out where an object is not getting reassigned.&amp;#160; However, the &lt;strong&gt;JavaScript&lt;/strong&gt; code is all &lt;strong&gt;compressed&lt;/strong&gt; using the &lt;a href="http://javascriptcompressor.com" target="_blank"&gt;JavaScript Compressor&lt;/a&gt; online utility (based on the &lt;a href="http://dean.edwards.name/packer/" target="_blank"&gt;Packer&lt;/a&gt; by Dean Edward).&amp;#160; What does that mean?&amp;#160; That means that instead of having line breaks and indents throughout our client-side scripts, they are all removed, along with any code comments.&amp;#160; This can &lt;strong&gt;significantly reduce page load times&lt;/strong&gt;, and decrease the time it takes for the page to render in the browser as well.&amp;#160; Not to mention that you’d &lt;strong&gt;save a ton of bandwidth&lt;/strong&gt;.&lt;/p&gt;  &lt;p&gt;So, instead of something like this:&lt;/p&gt;  &lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;   &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;     &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;/*&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;Some header comment here&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #008000"&gt;*/&lt;/span&gt;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;var&lt;/span&gt; will = &lt;span style="color: #006080"&gt;'awesome'&lt;/span&gt;;&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;function&lt;/span&gt; awesomeness() {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (will == &lt;span style="color: #006080"&gt;'awesome'&lt;/span&gt;) {&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;        alert(&lt;span style="color: #006080"&gt;'Will is totally wicked awesome!'&lt;/span&gt;);&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;    }&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;}&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;jQuery(document).ready( &lt;span style="color: #0000ff"&gt;function&lt;/span&gt;() { awesomeness(); } );&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;You would see something like this:&lt;/p&gt;

&lt;div style="border-bottom: gray 1px solid; border-left: gray 1px solid; padding-bottom: 4px; line-height: 12pt; background-color: #f4f4f4; margin: 20px 0px 10px; padding-left: 4px; width: 500px; padding-right: 4px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; max-height: 200px; font-size: 8pt; overflow: auto; border-top: gray 1px solid; cursor: text; border-right: gray 1px solid; padding-top: 4px"&gt;
  &lt;div style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;
    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: white; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&lt;span style="color: #0000ff"&gt;var&lt;/span&gt; will=&lt;span style="color: #006080"&gt;'awesome'&lt;/span&gt;;&lt;span style="color: #0000ff"&gt;function&lt;/span&gt; awesomeness(){&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;(will==&lt;span style="color: #006080"&gt;'awesome'&lt;/span&gt;){alert(&lt;span style="color: #006080"&gt;'Will is totally wicked awesome!'&lt;/span&gt;)}}jQuery(document).ready(&lt;span style="color: #0000ff"&gt;function&lt;/span&gt;(){awesomeness()});&lt;/pre&gt;

    &lt;pre style="border-bottom-style: none; padding-bottom: 0px; line-height: 12pt; border-right-style: none; background-color: #f4f4f4; margin: 0em; padding-left: 0px; width: 100%; padding-right: 0px; font-family: consolas, &amp;#39;Courier New&amp;#39;, courier, monospace; border-top-style: none; color: black; font-size: 8pt; border-left-style: none; overflow: visible; padding-top: 0px"&gt;&amp;#160;&lt;/pre&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;For a JavaScript library or file containing hundreds or thousands of lines of code, you should be able to quickly see how effective this would be overall on a busy website.&lt;/p&gt;

&lt;p&gt;Ideally, you would have two copies of every JavaScript file during development.&amp;#160; The first file would contain the regular JavaScript, with all of its comments, indentions, line breaks, and so on.&amp;#160; The copy of this file would contain the compressed version of the same code.&amp;#160; Typically, the files would be something like: &lt;font face="Courier New"&gt;YourCompany.js&lt;/font&gt;, and &lt;font face="Courier New"&gt;YourCompany.compressed.js&lt;/font&gt;.&lt;/p&gt;

&lt;p&gt;The problem I ran into today, was that our original JavaScript file did not contain the same code that was in the compressed version.&amp;#160; To make matters worse, the compressed version of the code was the most recent version that I needed.&amp;#160; Unfortunately, the &lt;a href="http://javascriptcompressor.com" target="_blank"&gt;JavaScript Compressor&lt;/a&gt; utility that we’ve been using does not yet employ a decompression or unpacking feature for code that was already compressed.&amp;#160; That feature only exists for code that was compressed on the previous page load.&lt;/p&gt;

&lt;p&gt;Our consultant is on vacation right now, and our client-side bug is live on our site, so please imagine how I panicked.&amp;#160; :)&lt;/p&gt;

&lt;p&gt;After a little while, and some diligent research, I happened across a &lt;a href="http://www.unwrongest.com/blog/how-to-decompress-javascript/" target="_blank"&gt;blog post talking about “beautifying” JavaScript code&lt;/a&gt;.&amp;#160; Basically, it was talking about the very thing I am talking to you about right now.&amp;#160; It had the direct link to another free online tool.&amp;#160; This one has the sole purpose of decompressing or unpacking JavaScript that was previously compressed like mine.&amp;#160; Woo hoo!&lt;/p&gt;

&lt;p&gt;Within a few clicks and seconds, I used the &lt;a href="http://jsbeautifier.org/" target="_blank"&gt;JavaScript Beautifier&lt;/a&gt; to &lt;strong&gt;make my JavaScript be human-readable&lt;/strong&gt; once again. Awesome!&lt;/p&gt;

&lt;div style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; display: inline; float: none; padding-top: 0px" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:f71a7b25-ddbb-464e-97e5-4a02d4babb76" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/DotNetNuke" rel="tag"&gt;DotNetNuke&lt;/a&gt;,&lt;a href="http://technorati.com/tags/DNN+Blogs" rel="tag"&gt;DNN Blogs&lt;/a&gt;,&lt;a href="http://technorati.com/tags/JavaScript" rel="tag"&gt;JavaScript&lt;/a&gt;&lt;/div&gt;</description></item><item><title>Iterating Through to Find Invalid XML Files</title><link>http://www.willstrohl.com/Blog/PostId/329/Iterating-Through-to-Find-Invalid-XML-Files</link><summary>&amp;lt;p&amp;gt;In one of my DotNetNuke sites, I have a folder full of XML files. Some had become invalid recently. Here's how I tracked them down.&amp;lt;/p&amp;gt;</summary><category>ASP.Net</category><pubDate>Wed, 25 Feb 2009 01:22:00 GMT</pubDate><description>&lt;p&gt;I have custom &lt;a target="_blank" href="http://www.dotnetnuke.com"&gt;DotNetNuke&lt;/a&gt; module that displays various information about hotels.&amp;#160; As you might imagine, this information could become quite lengthy for each hotel.&amp;#160; The module looks in the requested URL, and uses the hotel information in the URL to determine where to look for to load its information.&amp;#160;&lt;/p&gt;
&lt;p&gt;While the hotel information could come from a database table, it instead comes from an XML file.&amp;#160; There is a single XML file for each hotel.&amp;#160; These XML files are downloaded from a data provider regularly to make sure the information is up-to-date.&amp;#160; There are well more than 100,000 XML files in my situation.&lt;/p&gt;
&lt;p&gt;Recently, some of these files have become invalid.&amp;#160; After some troubleshooting, I found that there are XML fields that now contained HTML.&amp;#160; On its own, the new HTML makes the XML files invalid.&lt;/p&gt;
&lt;h2&gt;Why is HTML Invalid in XML?&lt;/h2&gt;
&lt;p&gt;By default, you cannot put HTML into an XML document.&amp;#160; The XML parser in all languages will throw an error when you try to access the XML document programmatically.&amp;#160; This is easily fixed.&amp;#160; All you have to do is add the &lt;span style="font-family: Courier New;"&gt;CDATA&lt;/span&gt; section elements inside of the invalid XML elements to fix this.&amp;#160; For example, the following snippet shows an XML element with invalid content.&lt;/p&gt;
&lt;div style="border: 1px solid rgb(0, 0, 0); overflow: auto; width: 500px;"&gt;
&lt;pre&gt;
&amp;lt;descriptionText&amp;gt;The &amp;lt;u&amp;gt;really cool&amp;lt;/u&amp;gt; brown fox ran fast &amp;amp; hard.&amp;lt;/descriptionText&amp;gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Unfortunately, XML parsers will throw an error when this element is attempted to be parsed.&amp;#160; The &lt;span style="font-family: Courier New;"&gt;&amp;lt;&lt;/span&gt;, &lt;span style="font-family: Courier New;"&gt;&amp;gt;&lt;/span&gt;, and &lt;span style="font-family: Courier New;"&gt;&amp;amp;&lt;/span&gt; characters are "illegal" characters and cannot be used.&amp;#160; Instead, the previous snippet could be parsed by implementing the &lt;span style="font-family: Courier New;"&gt;CDATA&lt;/span&gt; element.&lt;/p&gt;
&lt;div style="border: 1px solid rgb(0, 0, 0); overflow: auto; width: 500px;"&gt;
&lt;pre&gt;
&amp;lt;descriptionText&amp;gt;&amp;lt;![CDATA[The &amp;lt;u&amp;gt;really cool&amp;lt;/u&amp;gt; brown fox ran fast &amp;amp; hard.]]&amp;gt;&amp;lt;/descriptionText&amp;gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;All I did was add the &lt;span style="font-family: Courier New;"&gt;&amp;lt;![CDATA]]&amp;gt;&lt;/span&gt; element to wrap the text.&amp;#160; Anything inside of the &lt;span style="font-family: Courier New;"&gt;CDATA&lt;/span&gt; element is considered "legal", resulting in the parser ignoring any reserved or illegal characters.&lt;/p&gt;
&lt;h2&gt;Which XML Files are Invalid?&lt;/h2&gt;
&lt;p&gt;The hard way to find out what files are invalid is to open them one at a time in an editor that parses the file.&amp;#160; We obviously wouldn't want to do that.&amp;#160; In my situation, the first thing I needed to find out is exactly how many of my 100,000+ XML files are invalid.&amp;#160; This would help me decide how to proceed in terms of a solution.&lt;/p&gt;
&lt;p&gt;Instead, I wrote a quick and dirty APSX web page to iterate through all of the XML files, attempt to parse them, and display the file name if it is invalid.&amp;#160; Here is a screen shot of what that might look like once the web page is run.&lt;/p&gt;
&lt;p style="text-align: center;"&gt;&lt;img hspace="5" height="423" border="0" width="442" vspace="5" src="/Portals/1/images/blog/dnn/xml_file_parse_page_screenshot.png" alt="List of Invalid XML Files" /&gt;&lt;/p&gt;
&lt;p&gt;I have attached my sample web page to this blog entry.&amp;#160; The mark-up and codebehind are commented thoroughly to assist you.&amp;#160; You should be able to just download it and place it in your website.&amp;#160; In order for it to work though, you first need to go into the codebehind, and change the file path it searches through.&lt;/p&gt;
&lt;p&gt;This file searches through the directory specified in the code behind.&amp;#160; Then, it attempts to load each XML file into an in-memory XmlDocument object.&amp;#160; If an error occurs, the XML file is invalid.&amp;#160; It's as simple as that.&lt;/p&gt;
&lt;p&gt;This file searched through 100,000+ XML files in less than 30 seconds for me.&amp;#160; In addition, it showed me the file path, file name, and made each file clickable.&amp;#160; This allowed me to open the file to fix it individually if I decided to do so.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Attached File:&lt;/strong&gt; &lt;a href="http://www.willstrohl.com/Portals/1/Downloads/FindErroredXMLFiles.zip"&gt;FindErroredXMLFiles.zip&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Technorati Tags:  &lt;a rel="tag" href="http://technorati.com/tags/DNN"&gt;DNN&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tags/DotNetNuke"&gt;DotNetNuke&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tags/DNN%20Blog"&gt;DNN Blog&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tags/XML"&gt;XML&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Using jQuery to Highlight (Select) All Text in a Textbox</title><link>http://www.willstrohl.com/Blog/PostId/320/Using-jQuery-to-Highlight-Select-All-Text-in-a-Te</link><summary>&amp;lt;p&amp;gt;Since DotNetNuke adopted jQuery into the DNN core, I have been using it. Here is another tip for a common scenario.&amp;lt;/p&amp;gt;</summary><category>ASP.Net</category><pubDate>Wed, 11 Feb 2009 10:45:00 GMT</pubDate><description>&lt;p&gt;The folks working on jQuery have really done a fantastic job of making the lives of developers across the globe earier.&amp;#160; But they do not need me to tell them that.&amp;#160; :)&lt;/p&gt;
&lt;p&gt;I am so happy that the DotNetNuke Core Team decided to put jQuery support into the DNN Core.&amp;#160; That has simplified and decreased UI development time for me exponentially.&amp;#160; And it has made UI development more fun too!&amp;#160; Moving on...&lt;/p&gt;
&lt;p&gt;Here is the scenario that I ran into today.&amp;#160; A website visitor enters a value into a textbox, or selects a value from an autocomplete implementation.&amp;#160; No matter how much text is in the textbox, the novice web form user will not know how to quickly replace that text.&amp;#160; They will simply click once in the textbox, and then use many keystroke of both the &lt;span style="font-family: Courier New;"&gt;&amp;lt;Delete&amp;gt;&lt;/span&gt; and &lt;span style="font-family: Courier New;"&gt;&amp;lt;Backspace&amp;gt;&lt;/span&gt; keys to remove the text before they enter in new text.&amp;#160; This is not a favorable usability experience.&lt;/p&gt;
&lt;p&gt;Here is how you might fix that: make the textbox automatically highlight or select all of the text in the textbox when the visitor clicks in it.&amp;#160; The main problem has always been getting things like this to work in all browsers.&amp;#160; Here is how you would implement this using jQuery.&lt;/p&gt;
&lt;p&gt;Let's assume that we have the following text input:&lt;/p&gt;
&lt;div style="width:500px;border:1px solid #000000;overflow:auto;"&gt;&lt;pre&gt;
&amp;lt;input type="text" id="txtInput" /&amp;gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;In most cases, we would want to have this feature available to all textboxes across our website, so we would create a function to handle this, and call it as needed.&amp;#160; Calling this function with the expected argument will make execute the highlighting of the text.&lt;/p&gt;
&lt;div style="width:500px;border:1px solid #000000;overflow:auto;"&gt;&lt;pre&gt;
function selectAllText(textbox) {
    textbox.focus();
    textbox.select();
}&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Assuming you are developing against DotNetNuke 5, or have jQuery already imported into your website, add the following jQuery to your site for each textbox.&amp;#160; (If you have a lot of textboxes, we could do this differently, but that's for a different post.)&lt;/p&gt;
&lt;div style="width:500px;border:1px solid #000000;overflow:auto;"&gt;&lt;pre&gt;
jQuery('#txtInput').click(function() { selectAllText(jQuery(this)) });&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Now, when you run the code, you will end up with a working textbox, like the example below.&lt;/p&gt;
&lt;p&gt;&lt;input type="text" id="txtInput" value="Some really long text that would be tiresome to delete key by key" /&gt;&lt;/p&gt;
&lt;script language="javascript" type="text/javascript"&gt;
function selectAllText(textbox) {
    textbox.focus();
    textbox.select();
}
jQuery('#txtInput').click(function() { selectAllText(jQuery(this)) });
&lt;/script&gt;
&lt;p&gt;Technorati Tags: 
&lt;a href="http://technorati.com/tags/DNN" rel="tag"&gt;DNN&lt;/a&gt;, &lt;a href="http://technorati.com/tags/DotNetNuke" rel="tag"&gt;DotNetNuke&lt;/a&gt;, &lt;a href="http://technorati.com/tags/DNN%20Blog" rel="tag"&gt;DNN Blog&lt;/a&gt;, &lt;a href="http://technorati.com/tags/jQuery" rel="tag"&gt;jQuery&lt;/a&gt;, &lt;a href="http://technorati.com/tags/5.00.00" rel="tag"&gt;5.00.00&lt;/a&gt;
&lt;/p&gt;</description></item><item><title>jQuery - Change the Default Option in a Select Listbox</title><link>http://www.willstrohl.com/Blog/PostId/301/jQuery-Change-the-Default-Option-in-a-Select-Li</link><summary>&amp;lt;p&amp;gt;We at &amp;lt;a href=&amp;quot;http://www.rezhub.com&amp;quot; target=&amp;quot;_blank&amp;quot;&amp;gt;RezHub.com&amp;lt;/a&amp;gt; are upgrading our standard JavaScript code to use jQuery going forward. Today was my first day of just learning jQuery, and not just tinkering with it.&amp;lt;/p&amp;gt;</summary><category>ASP.Net</category><pubDate>Wed, 28 Jan 2009 22:20:00 GMT</pubDate><description>&lt;p&gt;If you haven't already heard all of the hub-bub about &lt;a href="http://www.jquery.com" target="_blank"&gt;jQuery&lt;/a&gt;, it is quite simple. jQuery is an open source JavaScript library.&amp;#160; It's main purpose is to make your JavaScript development easier, and faster.&amp;#160; Oh BOY does it!!!&amp;#160; We have been using it on our production sites for about 2 weeks now.&lt;/p&gt;
&lt;h1&gt;First Day Using jQuery&lt;/h1&gt;
&lt;p&gt;Today, I had to change the default selection of a SELECT listbox on the client-side, after page load in a &lt;a href="http://www.dotnetnuke.com" target="_blank"&gt;DotNetNuke&lt;/a&gt; module.&amp;#160; jQuery was the obvious candidate to make this happen.&amp;#160; Especially since I've done this before using JavaScript, and I know how much code it can take to make it happen reliably and on all major web browsers.&lt;/p&gt;
&lt;p&gt;I set out to make this happen.&amp;#160; However, I fell into a learning curve that I didn't expect to hit.&amp;#160; It reminded me of when I was trying to first learn VB.Net, and I was thinking of binding data recordset-style instead of the prescribed (at the time) dataset style.&amp;#160; I was just thinking in the wrong way.&amp;#160; I had to adapt and understand how I was supposed to use the API.&lt;/p&gt;
&lt;p&gt;After a full day of using jQuery, I cannot believe how powerful using jQuery can be.&lt;/p&gt;
&lt;h1&gt;Changing the Default Select Listbox Option&lt;/h1&gt;
&lt;p&gt;I had a form that had an HTML listbox on the page.&amp;#160; It rendered, selecting a default value that I was asked to change to another value.&amp;#160; This is an ideal test case.&amp;#160; Let's say that we have the following SELECT element on a web page.&lt;/p&gt;
&lt;div style="width:500px;overflow:auto;"&gt;
&lt;font color='blue'&gt;&amp;lt;&lt;/font&gt;&lt;font color='maroon'&gt;select&lt;/font&gt;&lt;font color='red'&gt;&amp;nbsp;id&lt;/font&gt;&lt;font color='blue'&gt;="cboDays"&lt;/font&gt;&lt;font color='red'&gt;&amp;nbsp;name&lt;/font&gt;&lt;font color='blue'&gt;="cboDays"&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='red'&gt;&amp;nbsp;value&lt;/font&gt;&lt;font color='blue'&gt;="Sunday"&lt;/font&gt;&lt;font color='red'&gt;&amp;nbsp;selected&lt;/font&gt;&lt;font color='blue'&gt;="selected"&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;Sunday&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;/&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='blue'&gt;&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='red'&gt;&amp;nbsp;value&lt;/font&gt;&lt;font color='blue'&gt;="Monday"&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;Monday&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;/&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='blue'&gt;&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='red'&gt;&amp;nbsp;value&lt;/font&gt;&lt;font color='blue'&gt;="Tuesday"&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;Tuesday&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;/&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='blue'&gt;&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='red'&gt;&amp;nbsp;value&lt;/font&gt;&lt;font color='blue'&gt;="Wednesday"&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;Wednesday&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;/&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='blue'&gt;&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='red'&gt;&amp;nbsp;value&lt;/font&gt;&lt;font color='blue'&gt;="Thursday"&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;Thursday&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;/&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='blue'&gt;&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='red'&gt;&amp;nbsp;value&lt;/font&gt;&lt;font color='blue'&gt;="Friday"&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;Friday&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;/&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='blue'&gt;&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='red'&gt;&amp;nbsp;value&lt;/font&gt;&lt;font color='blue'&gt;="Saturday"&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;Saturday&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;/&lt;/font&gt;&lt;font color='maroon'&gt;option&lt;/font&gt;&lt;font color='blue'&gt;&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;&lt;br /&gt;
&lt;/font&gt;&lt;font color='blue'&gt;&amp;lt;/&lt;/font&gt;&lt;font color='maroon'&gt;select&lt;/font&gt;&lt;font color='blue'&gt;&amp;gt;&lt;/font&gt;&lt;font color='black'&gt;&lt;/font&gt;
&lt;/div&gt;
&lt;p&gt;The default selected value is the Sunday OPTION.&amp;#160; For our example, let's say that we need for the default value on page load to be Wednesday instead.&lt;/p&gt;
&lt;p&gt;We could do this via our typical JavaScript methods, but that is a lot of work.&amp;#160; Let's instead use jQuery.&amp;#160; First of all, you need to &lt;a href="http://docs.jquery.com/Downloading_jQuery" target="_blank"&gt;download the jQuery script library&lt;/a&gt; and include it on your website/page.&lt;/p&gt;
&lt;p&gt;Now I am going to hit you with a huge eye opener.&amp;#160; Here is the jQuery script that will solve our problem:&lt;/p&gt;
&lt;div style="width:500px;overflow:auto;"&gt;
&lt;font color='black'&gt;jQuery(&lt;/font&gt;&lt;font color='#808080'&gt;"select#cboDays&amp;nbsp;option[selected]"&lt;/font&gt;&lt;font color='black'&gt;).removeAttr(&lt;/font&gt;&lt;font color='#808080'&gt;"selected"&lt;/font&gt;&lt;font color='black'&gt;)&lt;/font&gt;&lt;font color='blue'&gt;;&lt;br /&gt;
&lt;/font&gt;&lt;font color='black'&gt;jQuery(&lt;/font&gt;&lt;font color='#808080'&gt;"select#cboDays&amp;nbsp;option[value='Wednesday']"&lt;/font&gt;&lt;font color='black'&gt;).attr(&lt;/font&gt;&lt;font color='#808080'&gt;"selected"&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"selected"&lt;/font&gt;&lt;font color='black'&gt;)&lt;/font&gt;&lt;font color='blue'&gt;;&lt;/font&gt;
&lt;/div&gt;
&lt;p&gt;Could it be???&amp;#160; Only two lines of JavaScrip code???&amp;#160; Yes.&amp;#160; It works.&amp;#160; I could go into very great detail about all of the ins and outs of selectors, but the &lt;a href="http://docs.jquery.com/Main_Page" target="_blank"&gt;jQuery documentation&lt;/a&gt; already does a great job of it for me.&amp;#160; &lt;/p&gt;
&lt;p&gt;Basically, the first portion, &lt;span style="font-family: Courier New;"&gt;jQuery(&lt;em&gt;string&lt;/em&gt;)&lt;/span&gt; is the selector.&amp;#160; Selectors always return a collection of Object.&amp;#160; Something I LOVE about jQuery is its CSS-style of selecting HTML elements on the page.&amp;#160; This makes it incredibly easy to find and manage HTML elements if you've had any experience using CSS at all.&lt;/p&gt;
&lt;p&gt;In the first line of code, all OPTION children of the SELECT element with the ID of "cboDays" are selected.&amp;#160; In our case, there is only one element.&amp;#160; The second method call seeks to remove any SELECTED attributes in the OPTION tag.&lt;/p&gt;
&lt;p&gt;The next line of code uses a similar selector, but only returns a single object matching the OPTION child of the same SELECT element.&amp;#160; The OPTION element we selected was the one with the attribute, VALUE, having the value of "Wednesday."&lt;/p&gt;
&lt;p&gt;Sounds simple enough, right?&amp;#160; I am geeking out over this!&lt;/p&gt;
&lt;p&gt;I hope that this blog entry gives you a little more confidence to write your own jQuery scripts, or answers a question you've had.&lt;/p&gt;
&lt;p&gt;Technorati Tags: 
&lt;a href="http://technorati.com/tags/DNN" rel="tag"&gt;DNN&lt;/a&gt;, &lt;a href="http://technorati.com/tags/DotNetNuke" rel="tag"&gt;DotNetNuke&lt;/a&gt;, &lt;a href="http://technorati.com/tags/DNN%20Blog" rel="tag"&gt;DNN Blog&lt;/a&gt;, &lt;a href="http://technorati.com/tags/jQuery" rel="tag"&gt;jQuery&lt;/a&gt;
&lt;/p&gt;</description></item><item><title>String Performance Part Two - String Concatenation</title><link>http://www.willstrohl.com/Blog/PostId/244/String-Performance-Part-Two-String-Concatenation</link><summary>In a follow-up to my previous blog entry, I wanted to directly compare string concatenation methods.</summary><category>ASP.Net</category><pubDate>Thu, 04 Dec 2008 17:43:00 GMT</pubDate><description>&lt;p&gt;In a follow-up to my &lt;a href="/Blog/tabid/66/EntryID/244/Default.aspx"&gt;previous post about string performance&lt;/a&gt;, I decided to do more of side-by-side comparison of the most common string concatenation techniques.&lt;/p&gt; &lt;p&gt;We all know these common techniques to be using the typical concatenation characters (&amp; or +), String.Concat, and the StringBuilder. I have read many times and saw pretty graphs telling me about how high performing the String.Concat method is over the traditional concatenation method. I was highly surprised to find results to contradict these findings in my own testing.&lt;/p&gt; &lt;p&gt;So here is how I set-up this testing... I created a Console Application and created code to build out a list of a string object, and put that information into a dynamically generated HTML table. The code used to perform this is at the bottom of the blog entry. Within the HTML table code, I left it open to repeat the table row generation from the list object. This way, we can run as many iterations through string objects as we want.&lt;/p&gt; &lt;p&gt;The first test went as expected. I ran through a single iteration. The standard concatenation method was the only method to cost more than 0 milliseconds.&lt;/p&gt; &lt;p style="text-align:center;"&gt;&lt;img width="500" height="248" src="/Portals/1/images/blog/benchmarks/String_Concat_Iteration_1.png" alt="Console Application" border="0" hspace="5" vspace="5" /&gt;&lt;/p&gt; &lt;p&gt;Bumping the iterations from 1 to 5 began to show me something I didn't expect. The String.Concat method and standard concatenation ran even with each other at 15 milliseconds, versus the StringBuilder which was still 0 milliseconds.&lt;/p&gt; &lt;p style="text-align:center;"&gt;&lt;img width="500" height="248" src="/Portals/1/images/blog/benchmarks/String_Concat_Iteration_5.png" alt="Console Application" border="0" hspace="5" vspace="5" /&gt;&lt;/p&gt; &lt;p&gt;Doubling the iterations at 10 showed us that the String.Concat method was beginning to slow down in comparison to the standard concatenation method. The StringBuilder was still running under 0 milliseconds.&lt;/p&gt; &lt;p style="text-align:center;"&gt;&lt;img width="500" height="248" src="/Portals/1/images/blog/benchmarks/String_Concat_Iteration_10.png" alt="Console Application" border="0" hspace="5" vspace="5" /&gt;&lt;/p&gt; &lt;p&gt;The previous finding remained true until we approach 500 iterations. Once there, we begin to see the StringBuilder actually spend some ticks getting finished. The other methods take longer, but the percentages are the same.&lt;/p&gt; &lt;p style="text-align:center;"&gt;&lt;img width="500" height="248" src="/Portals/1/images/blog/benchmarks/String_Concat_Iteration_500.png" alt="Console Application" border="0" hspace="5" vspace="5" /&gt;&lt;/p&gt; &lt;p&gt;This puts a kink in the way I do things and what I have witnessed to work (outside of benchmarks). So I am not sure how I will proceed at this point.&lt;/p&gt; &lt;p&gt;Here is the code used to determine these findings:&lt;/p&gt; &lt;div style="width:500px;height:700px;overflow:auto;border:1px solid #000000;"&gt; &lt;div style="word-wrap:break-word;margin:10px;padding:10px;border:2px ridge white;background-color:#eeeeee;font-family:Courier New;font-size:10pt;"&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color='blue'&gt;Private&amp;nbsp;Sub&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;StringConcatenationCompare()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Dim&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&amp;nbsp;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Empty&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Dim&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;sbOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Text.StringBuilder&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&amp;nbsp;get&amp;nbsp;a&amp;nbsp;list&amp;nbsp;of&amp;nbsp;string&amp;nbsp;objects&amp;nbsp;to&amp;nbsp;concatenate&amp;nbsp;later&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Dim&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;List(Of&amp;nbsp;Customer)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lstCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;GetCustomerList()&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&amp;nbsp;create&amp;nbsp;the&amp;nbsp;timer&amp;nbsp;objects&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Dim&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;dteStart&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;DateTime&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Nothing&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Dim&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;spnTime&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;TimeSpan&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Nothing&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&amp;nbsp;set&amp;nbsp;up&amp;nbsp;a&amp;nbsp;counter&amp;nbsp;to&amp;nbsp;reiterate&amp;nbsp;through&amp;nbsp;concantenations&amp;nbsp;to&amp;nbsp;simulate&amp;nbsp;a&amp;nbsp;high&amp;nbsp;load&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Dim&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;intCount&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;Integer&amp;nbsp;=&amp;nbsp;&lt;/font&gt;&lt;font color='maroon'&gt;500&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Console.WriteLine(&lt;/font&gt;&lt;font color='blue'&gt;String&lt;/font&gt;&lt;font color='black'&gt;.&lt;/font&gt;&lt;font color='blue'&gt;Format&lt;/font&gt;&lt;font color='black'&gt;(&lt;/font&gt;&lt;font color='#808080'&gt;"Testing&amp;nbsp;the&amp;nbsp;conditions&amp;nbsp;{0}&amp;nbsp;times."&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;intCount.ToString))&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;'&amp;nbsp;BEGIN&amp;nbsp;NORMAL&amp;nbsp;CONCATENATION&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;'&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Console.WriteLine(Environment.NewLine)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/font&gt;&lt;font color='#808080'&gt;"TEST&amp;nbsp;CONDITION:"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/font&gt;&lt;font color='#808080'&gt;"strOutput&amp;nbsp;+=&amp;nbsp;""&amp;lt;td&amp;gt;""&amp;nbsp;+&amp;nbsp;item.FirstName&amp;nbsp;+&amp;nbsp;""&amp;nbsp;""&amp;nbsp;+&amp;nbsp;item.LastName&amp;nbsp;+&amp;nbsp;""&amp;lt;/td&amp;gt;"""&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&amp;nbsp;build&amp;nbsp;a&amp;nbsp;table&amp;nbsp;of&amp;nbsp;customers&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;dteStart&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;DateTime.&lt;/font&gt;&lt;font color='blue'&gt;Now&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;table&amp;nbsp;cellpadding=""0""&amp;nbsp;cellspacing=""0""&amp;nbsp;border=""0""&amp;nbsp;width=""100%""&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;tr&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;Full&amp;nbsp;Name&amp;lt;/td&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;First&amp;nbsp;Name&amp;lt;/td&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;Last&amp;nbsp;Name&amp;lt;/td&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;City&amp;lt;/td&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;State&amp;lt;/td&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/tr&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;For&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;intI&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;Integer&amp;nbsp;=&amp;nbsp;&lt;/font&gt;&lt;font color='maroon'&gt;0&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;To&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;intCount&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;For&amp;nbsp;Each&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;item&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;In&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;tr&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;+&amp;nbsp;item.FirstName&amp;nbsp;+&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;nbsp;"&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;+&amp;nbsp;item.LastName&amp;nbsp;+&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;+&amp;nbsp;item.FirstName&amp;nbsp;+&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;+&amp;nbsp;item.LastName&amp;nbsp;+&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;+&amp;nbsp;item.City&amp;nbsp;+&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;+&amp;nbsp;item.State&amp;nbsp;+&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/tr&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Next&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Next&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;+&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/table&amp;gt;"&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&amp;nbsp;display&amp;nbsp;time&amp;nbsp;of&amp;nbsp;output&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;spnTime&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;DateTime.&lt;/font&gt;&lt;font color='blue'&gt;Now&lt;/font&gt;&lt;font color='black'&gt;.Subtract(dteStart)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/font&gt;&lt;font color='blue'&gt;String&lt;/font&gt;&lt;font color='black'&gt;.&lt;/font&gt;&lt;font color='blue'&gt;Format&lt;/font&gt;&lt;font color='black'&gt;(&lt;/font&gt;&lt;font color='#808080'&gt;"Standard&amp;nbsp;concatenation&amp;nbsp;took&amp;nbsp;{0}&amp;nbsp;milliseconds."&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;spnTime.Milliseconds.ToString))&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&amp;nbsp;BEGIN&amp;nbsp;reset&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Empty&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&amp;nbsp;END&amp;nbsp;reset&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;'&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;'&amp;nbsp;BEGIN&amp;nbsp;String.Concat&amp;nbsp;CONCATENATION&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;'&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Console.WriteLine(Environment.NewLine)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/font&gt;&lt;font color='#808080'&gt;"TEST&amp;nbsp;CONDITION:"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/font&gt;&lt;font color='#808080'&gt;"strOutput&amp;nbsp;=&amp;nbsp;String.Concat(strOutput,&amp;nbsp;""&amp;lt;td&amp;gt;"",&amp;nbsp;item.FirstName,&amp;nbsp;""&amp;nbsp;"",&amp;nbsp;item.LastName,&amp;nbsp;""&amp;lt;/td&amp;gt;"""&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&amp;nbsp;build&amp;nbsp;a&amp;nbsp;table&amp;nbsp;of&amp;nbsp;customers&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;dteStart&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;DateTime.&lt;/font&gt;&lt;font color='blue'&gt;Now&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;table&amp;nbsp;cellpadding=""0""&amp;nbsp;cellspacing=""0""&amp;nbsp;border=""0""&amp;nbsp;width=""100%""&amp;gt;"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;tr&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;Full&amp;nbsp;Name&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;First&amp;nbsp;Name&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;Last&amp;nbsp;Name&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;City&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;State&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/tr&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;For&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;intI&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;Integer&amp;nbsp;=&amp;nbsp;&lt;/font&gt;&lt;font color='maroon'&gt;0&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;To&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;intCount&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;For&amp;nbsp;Each&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;item&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;In&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;tr&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;item.FirstName,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;nbsp;"&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;item.LastName,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;item.FirstName,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;item.LastName,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;item.City,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;item.State,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/tr&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Next&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Next&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;strOutput&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;.Concat(strOutput,&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/table&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&amp;nbsp;display&amp;nbsp;time&amp;nbsp;of&amp;nbsp;output&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;spnTime&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;DateTime.&lt;/font&gt;&lt;font color='blue'&gt;Now&lt;/font&gt;&lt;font color='black'&gt;.Subtract(dteStart)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/font&gt;&lt;font color='blue'&gt;String&lt;/font&gt;&lt;font color='black'&gt;.&lt;/font&gt;&lt;font color='blue'&gt;Format&lt;/font&gt;&lt;font color='black'&gt;(&lt;/font&gt;&lt;font color='#808080'&gt;"String.Concat&amp;nbsp;concatenation&amp;nbsp;took&amp;nbsp;{0}&amp;nbsp;milliseconds."&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;spnTime.Milliseconds.ToString))&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;'&amp;nbsp;BEGIN&amp;nbsp;StringBuilder&amp;nbsp;CONCATENATION&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;'&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Console.WriteLine(Environment.NewLine)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/font&gt;&lt;font color='#808080'&gt;"TEST&amp;nbsp;CONDITION:"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/font&gt;&lt;font color='#808080'&gt;"(used&amp;nbsp;the&amp;nbsp;stringbuilder)"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&amp;nbsp;build&amp;nbsp;a&amp;nbsp;table&amp;nbsp;of&amp;nbsp;customers&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;dteStart&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;DateTime.&lt;/font&gt;&lt;font color='blue'&gt;Now&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;table&amp;nbsp;cellpadding=""0""&amp;nbsp;cellspacing=""0""&amp;nbsp;border=""0""&amp;nbsp;width=""100%""&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;tr&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;Full&amp;nbsp;Name&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;First&amp;nbsp;Name&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;Last&amp;nbsp;Name&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;City&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;State&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/tr&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;For&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;intI&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;Integer&amp;nbsp;=&amp;nbsp;&lt;/font&gt;&lt;font color='maroon'&gt;0&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;To&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;intCount&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;For&amp;nbsp;Each&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;item&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;In&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;tr&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(item.FirstName)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;nbsp;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(item.LastName)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(item.FirstName)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(item.LastName)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(item.City)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(item.State)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/td&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/tr&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Next&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Next&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;sbOutput.Append(&lt;/font&gt;&lt;font color='#808080'&gt;"&amp;lt;/table&amp;gt;"&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='darkgreen'&gt;'&amp;nbsp;display&amp;nbsp;time&amp;nbsp;of&amp;nbsp;output&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;spnTime&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;DateTime.&lt;/font&gt;&lt;font color='blue'&gt;Now&lt;/font&gt;&lt;font color='black'&gt;.Subtract(dteStart)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Console.WriteLine(&lt;/font&gt;&lt;font color='blue'&gt;String&lt;/font&gt;&lt;font color='black'&gt;.&lt;/font&gt;&lt;font color='blue'&gt;Format&lt;/font&gt;&lt;font color='black'&gt;(&lt;/font&gt;&lt;font color='#808080'&gt;"StringBuilder&amp;nbsp;concatenation&amp;nbsp;took&amp;nbsp;{0}&amp;nbsp;milliseconds."&lt;/font&gt;&lt;font color='black'&gt;,&amp;nbsp;spnTime.Milliseconds.ToString))&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;Sub&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Private&amp;nbsp;Function&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;GetCustomerList()&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;List(Of&amp;nbsp;Customer)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Dim&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;List(Of&amp;nbsp;Customer)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Dim&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Nothing&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"John"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Dough"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Orlando"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"FL"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Bill"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Gates"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Seattle"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"WA"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Barack"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Obama"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Washington"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"DC"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"John"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"McCain"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Phoenix"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"AR"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Keanu"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Reeves"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Hollywood"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"CA"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Stephen"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Colbert"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"New&amp;nbsp;York"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"NY"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Jason"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Bourne"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Anytown"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"USA"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"LaDanian"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Tomlinson"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"San&amp;nbsp;Diego"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"CA"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Clinton"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Hart"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Ocala"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"FL"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Henry"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Ford"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Detroit"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"MI"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Michael"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Turner"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Atlanta"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"GA"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Grant"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Wilson"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Warwick"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"RI"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Claire"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Bennett"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Costa&amp;nbsp;Mesa"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"CA"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Michael"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Schofield"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Joliet"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"IL"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Drew"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Brees"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"New&amp;nbsp;Orleans"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"LA"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Criss"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Angel"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Las&amp;nbsp;Vegas"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"NV"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Rex"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Grossman"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Chicago"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"IL"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Antonio"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Cromartie"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Tallahassee"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"FL"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Dan"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Marino"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Miami"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"FL"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Hulk"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Hogan"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Tampa"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"FL"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Michael"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Winslow"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Orlando"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"FL"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Kurt"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Angle"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Orlando"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"FL"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"John"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Travolta"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Ocala"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"FL"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Leo"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"LaPorte"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"San&amp;nbsp;Francisco"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"CA"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Kevin"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Rose"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"San&amp;nbsp;Francisco"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"CA"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Mohinder"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Suresh"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"New&amp;nbsp;York"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"NY"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Stephen"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"King"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Bangor"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"ME"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Dan"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Fouts"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"San&amp;nbsp;Diego"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"CA"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Junior"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Seau"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"San&amp;nbsp;Diego"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"CA"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Kurt"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Warner"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Phoenix"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"AZ"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;objCustomer&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;New&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;With&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;objCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Russ"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Rollins"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"Orlando"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;.State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='#808080'&gt;"FL"&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;With&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer.Add(objCustomer)&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Return&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;lstCustomer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;Function&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Public&amp;nbsp;NotInheritable&amp;nbsp;Class&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;Customer&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;Private&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;p_FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Private&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;p_LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Private&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;p_City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Private&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;p_State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Public&amp;nbsp;Property&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;FirstName()&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Get&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Return&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;p_FirstName&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;Get&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Set&lt;/font&gt;&lt;font color='black'&gt;(&lt;/font&gt;&lt;font color='blue'&gt;ByVal&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;value&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;p_FirstName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;value&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;Set&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;End&amp;nbsp;Property&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Public&amp;nbsp;Property&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;LastName()&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Get&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Return&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;p_LastName&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;Get&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Set&lt;/font&gt;&lt;font color='black'&gt;(&lt;/font&gt;&lt;font color='blue'&gt;ByVal&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;value&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;p_LastName&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;value&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;Set&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;End&amp;nbsp;Property&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Public&amp;nbsp;Property&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;City()&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Get&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Return&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;p_City&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;Get&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Set&lt;/font&gt;&lt;font color='black'&gt;(&lt;/font&gt;&lt;font color='blue'&gt;ByVal&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;value&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;p_City&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;value&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;Set&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;End&amp;nbsp;Property&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Public&amp;nbsp;Property&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;State()&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Get&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Return&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;p_State&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;Get&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Set&lt;/font&gt;&lt;font color='black'&gt;(&lt;/font&gt;&lt;font color='blue'&gt;ByVal&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;value&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;As&amp;nbsp;String&lt;/font&gt;&lt;font color='black'&gt;)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;p_State&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;=&amp;nbsp;&lt;/font&gt;&lt;font color='black'&gt;value&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color='blue'&gt;End&amp;nbsp;Set&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;End&amp;nbsp;Property&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;End&amp;nbsp;Class&lt;/font&gt;
	&lt;/div&gt;&lt;/div&gt; &lt;p&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/Strings" rel="tag"&gt;Strings&lt;/a&gt; ,&lt;a href="http://technorati.com/tags/Performance" rel="tag"&gt;Performance&lt;/a&gt; ,&lt;a href="http://technorati.com/tags/VB" rel="tag"&gt;VB&lt;/a&gt; &lt;/p&gt;</description></item><item><title>String Performance Benchmarks</title><link>http://www.willstrohl.com/Blog/PostId/243/String-Performance-Benchmarks</link><summary>Recently, a colleague and I were discussing the performance difference of String.Format and String.Concat. Here is what followed...</summary><category>ASP.Net</category><pubDate>Thu, 04 Dec 2008 01:11:00 GMT</pubDate><description>&lt;p&gt;I have a public tutorial document that I have just found out needs a little revisioning.  Generally, you do not ever want to put string objects together using the standard concatenation character such as "&amp;" or "+". The problem lies in how the string is handled at runtime. &lt;/p&gt; &lt;p&gt;For each concatenation character, a new string object is created in memory, and then the two string objects are put together.  It may not sound like it from this short description, but such practices can bring a busy application down to its knees in no time flat.&lt;/p&gt; &lt;p&gt;Generally, for smaller strings, you would never use the StringBuilder object.  In those cases, we use &lt;font face="Courier New"&gt;String.Concat&lt;/font&gt; or &lt;font face="Courier New"&gt;String.Format&lt;/font&gt;.  But which one is more efficient?&lt;/p&gt; &lt;p&gt;I decided to test this out in a console application.  I created two loops that each built a string using either the format or concat methods exclusively.  Here are the results...&lt;/p&gt; &lt;p&gt;First, I tried something small.  This is similar to what you might see on a single page load - if your web page does not havea whole lot of content.&lt;/p&gt; &lt;p align="center"&gt;&lt;img hspace="5" height="248" border="0" width="500" vspace="5" src="/Portals/1/images/blog/dnn/string_concatenation_15_500x248.png" alt="Console Application" /&gt;&lt;/p&gt; &lt;p&gt;What you see above is nothing out of the ordinary.  The two strings are each built 15 times and then the loops quit, reporting the elapsed time it took to build each string.&lt;/p&gt; &lt;p&gt;Once we get to something like 45,000 iterations of the string build, we begin to see some impact where &lt;font face="Courier New"&gt;String.Format&lt;/font&gt; begins to under-perform by 100%.&lt;/p&gt; &lt;p align="center"&gt;&lt;img hspace="5" height="249" border="0" width="500" vspace="5" src="/Portals/1/images/blog/dnn/string_concatenation_45000_500x249.png" alt="Console Application" /&gt;&lt;/p&gt; &lt;p&gt;This behavior continues through 200,000 iterations.&lt;/p&gt; &lt;p align="center"&gt;&lt;img hspace="5" height="248" border="0" width="500" vspace="5" src="/Portals/1/images/blog/dnn/string_concatenation_200000_500x248.png" alt="Console Application" /&gt;&lt;/p&gt; &lt;p&gt;Now, when we bump the string build iterations to 2,000,000 the time it takes for the strings to build actually reverses!&lt;/p&gt; &lt;p align="center"&gt;&lt;img hspace="5" height="247" border="0" width="500" vspace="5" src="/Portals/1/images/blog/dnn/string_concatenation_2000000_500x248.png" alt="Console Application" /&gt;&lt;/p&gt; &lt;p&gt;You can see in the above screenshot that the &lt;font face="Courier New"&gt;String.Concat&lt;/font&gt; method of building strings actually is over 150% slower now.  That is incredible?&lt;/p&gt; &lt;p&gt;What does this happen? I have no idea.  But realize this.  Unless you are working on a project where you have millions of string builds in a short time period, this final test is useless.  Informative, but useless. &lt;/p&gt; &lt;p&gt;So which is faster?  &lt;font face="Courier New"&gt;String.Concat&lt;/font&gt; certainly appears to be the clear winner.  However, this is also a very simplified example of putting strings together. &lt;/p&gt; &lt;p&gt;While in instances where there are only a couple of strings being put together at a time there appears to be no benefit either way, I must urge you to remember that even thousandths of a second add up.  In no time at all, you could wind up with an under performing application.&lt;/p&gt; &lt;p&gt;The bottom line is that you should perform this same testing yourself against your own application.&lt;/p&gt;
&lt;p&gt;Technorati Tags: 
&lt;a href="http://technorati.com/tags/Strings" rel="tag"&gt;Strings&lt;/a&gt;
,&lt;a href="http://technorati.com/tags/Performance" rel="tag"&gt;Performance&lt;/a&gt;
,&lt;a href="http://technorati.com/tags/VB" rel="tag"&gt;VB&lt;/a&gt;
&lt;/p&gt;</description></item><item><title>"Ouch! I think something up and bit me."</title><link>http://www.willstrohl.com/Blog/PostId/228/Ouch-I-think-something-up-and-bit-me</link><summary>You know those moments when an error that you should never let happen does happen???</summary><category>ASP.Net</category><pubDate>Wed, 19 Nov 2008 15:26:00 GMT</pubDate><description>&lt;p&gt;First, a funny quote because I have to share it with SOMEONE!&lt;/p&gt;
&lt;p&gt;&amp;ldquo;&lt;em&gt;I can picture in my mind a world without war, a world without hate. And I can picture us attacking that world, because they'd never expect it.&lt;/em&gt;&amp;rdquo;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; - Jack Handy&lt;/p&gt;
&lt;p&gt;No matter how long you have been doing a particular job, there are things that will from time to time jump up and bite you in the rear.&amp;nbsp; It would be expected though, if these things were new problems that you had never before encountered or heard of.&amp;nbsp; However, it seems to me that this usually happens not from new problems, but from old problems from long ago that you failed to prevent this one time.&amp;nbsp; So here is a fresh reminder to an old problem.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Case and point&amp;hellip;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;I was rolling out some code today to update a website I am a part of, called &lt;a href="http://www.rezhub.com" target="_blank"&gt;RezHub.com&lt;/a&gt;, you may have heard of it.&amp;nbsp; Part of this upgrade was to migrate the website and the remaining child assemblies to .Net Framework version 3.5.&amp;nbsp; Well, upon rolling out the code, I quickly realized when I attempted to view the site that I had not yet upgraded the &lt;font face="Courier New"&gt;web.config&lt;/font&gt; to compile against the 3.5 framework.&amp;nbsp; That&amp;rsquo;s not a problem.&amp;nbsp; I quickly diff&amp;rsquo;d the &lt;font face="Courier New"&gt;web.config&lt;/font&gt; files from the staging website to the production website.&lt;/p&gt;
&lt;p&gt;Time to view the website again&amp;hellip;&amp;nbsp; &amp;ldquo;Uh oh!&amp;nbsp; The site is still not compiling!&amp;nbsp; What in the world is going on?!&amp;nbsp; Everything is there!&amp;rdquo;&amp;nbsp; Now enter the curse words.&lt;/p&gt;
&lt;p&gt;The typical thing would be to either set the web.config to show the error remotely, or to view the site locally (on the same server) if you can.&amp;nbsp; Well, I first set the error to display externally.&amp;nbsp; I changed the &lt;font face="Courier New"&gt;customErrors&lt;/font&gt; setting to &amp;ldquo;Off.&amp;rdquo;&amp;nbsp; When I refreshed the page, the website didn&amp;rsquo;t appear to compile like it normally does with a &lt;font face="Courier New"&gt;web.config&lt;/font&gt; change.&amp;nbsp; &amp;ldquo;Hmmm&amp;hellip;&amp;rdquo;&lt;/p&gt;
&lt;p&gt;I double-checked the web.config setting and it was still set to show the compilation error to the world.&amp;nbsp; As a last ditch effort, the dim lightbulb in my head lit up and told me to view the site locally.&amp;nbsp; Duh!&amp;nbsp; I don&amp;rsquo;t know why I did that to begin with.&lt;/p&gt;
&lt;p&gt;Needless to say, but the error showed locally when it wouldn&amp;rsquo;t show externally, even though the &lt;font face="Courier New"&gt;web.config&lt;/font&gt; was set to allow it to.&amp;nbsp; If you are confused right now, think about this&amp;hellip;&amp;nbsp; The default setting for web applications is to not show the compilation errors externally.&amp;nbsp; So, if the error is not showing externally when you specified it to do so, then there is a problem with your &lt;font face="Courier New"&gt;web.config&lt;/font&gt;.&amp;nbsp; Either it doesn&amp;rsquo;t exist in the correct location, or there was a parsing error when reading the XML in the &lt;font face="Courier New"&gt;web.config&lt;/font&gt; document.&lt;/p&gt;
&lt;p&gt;My problem ended up being the latter.&amp;nbsp; When adding the XML for the .Net 3.5 migration, I accidentally added an extra closing element for one of the sections.&amp;nbsp; This resulted in an invalid XML document, and the web server not being able to parse it.&amp;nbsp; Viewing the site locally told me that.&lt;/p&gt;
&lt;p&gt;Stupid Will!&amp;nbsp; :)&lt;/p&gt;</description></item><item><title>SubSonic Comes Back with a Vengeance!</title><link>http://www.willstrohl.com/Blog/PostId/216/SubSonic-Comes-Back-with-a-Vengeance</link><summary>I love using SubSonic. If you are or ever have been interested in SubSonic, boy do I have news for you!</summary><category>ASP.Net</category><pubDate>Wed, 12 Nov 2008 08:37:00 GMT</pubDate><description>&lt;p&gt;I almost exclusively use &lt;a target="_blank" href="http://subsonicproject.com/"&gt;SubSonic&lt;/a&gt; as my &lt;a target="_blank" href="http://en.wikipedia.org/wiki/Data_access_layer"&gt;DAL&lt;/a&gt; to provide a quick, easy, and thoughtless way of getting to my data, and worry about my business logic.&lt;/p&gt;
&lt;p&gt;Well, &lt;a target="_blank" href="http://blog.wekeroad.com/"&gt;Rob Conery&lt;/a&gt; has used his massive brain (and programming laziness, explained in his post - we all have that gene) to put together the best installment of &lt;a target="_blank" href="http://subsonicproject.com/"&gt;SubSonic&lt;/a&gt; yet, in version 3.&amp;nbsp; In &lt;a target="_blank" href="http://blog.wekeroad.com/blog/subsonic-3-0-preview-1-linq-has-landed/"&gt;his blog post&lt;/a&gt;, he details the journey and what is to come.&amp;nbsp; So, I will not bore you with my dribble.&lt;/p&gt;
&lt;p&gt;I will leave you with this nugget of information though.&amp;nbsp; He was hired onto the &lt;a target="_blank" href="http://www.microsoft.com"&gt;Microsoft&lt;/a&gt; team mostly as a result of what he was able to accomplish with &lt;a target="_blank" href="http://subsonicproject.com/"&gt;SubSonic&lt;/a&gt;.&amp;nbsp; Now, he brings his inside knowledge to us by marrying &lt;a target="_blank" href="http://subsonicproject.com/"&gt;SubSonic&lt;/a&gt; and Linq together!&amp;nbsp; Unfortunately though, it's not backwards compatible.&amp;nbsp; I am afraid with the overhaul, that this was not possible.&lt;/p&gt;
&lt;p&gt;Seriously, read &lt;a target="_blank" href="http://blog.wekeroad.com/blog/subsonic-3-0-preview-1-linq-has-landed/"&gt;his blog post&lt;/a&gt;!&amp;nbsp; :)&lt;/p&gt;
&lt;p&gt;[UPDATE]&lt;br /&gt;
11/13/2008 - Rob Conery has another preview blog post:&lt;br /&gt;
&lt;a href="http://tinyurl.com/6gd9gn" target="_blank"&gt;http://tinyurl.com/6gd9gn&lt;/a&gt;&lt;br /&gt;
[/UPDATE]&lt;/p&gt;</description></item><item><title>Where is .Net Framework 3.5 for Windows x64?</title><link>http://www.willstrohl.com/Blog/PostId/187/Where-is-Net-Framework-35-for-Windows-x64</link><summary>This is a question I was about to ask in the ASP.Net forums. Luckily, I happened upon a link that explained this to me though.</summary><category>ASP.Net</category><pubDate>Mon, 20 Oct 2008 08:18:00 GMT</pubDate><description>&lt;p&gt;I have a few 64-bit servers, so for those of you who are not running anything in 64-bit yet, there is great care that should be taken to ensure that you have the correct download and/or install packages for ALL software.&amp;nbsp; While you can indeed run 32-bit software on a 64-bit system, it is recommended to use a 64-bit version is it is available.&lt;/p&gt;
&lt;p&gt;That being said, not all software providers offer 64-bit versions of their applications.&amp;nbsp; And of those that do, there are compatibility requirements to look at with existing software packages that may already be installed on your system.&lt;/p&gt;
&lt;p&gt;However, once you get by all of those generalities, we come to the topic at hand...&amp;nbsp; Where in the heck is the 64-bit version of the .Net Framework for version 3.5???&lt;/p&gt;
&lt;p&gt;I easily found the 3.5 framework to install here:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=333325FD-AE52-4E35-B531-508D977D32A6&amp;amp;displaylang=en" target="_blank"&gt;.Net Framework, version 3.5 Download&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Unfortunately, when you read though the download details, it offers no clues as to whether you are supposed to use this download for 32-bit or 64-bit Windows.&amp;nbsp; The rule of thumb is, if it doesn't say, then it is for 32-bit.&lt;/p&gt;
&lt;p&gt;Right when I was about to exhaust myself and resort to a post in the &lt;a href="http://forums.asp.net" target="_blank"&gt;ASP.Net forums&lt;/a&gt;, I found a link &lt;a href="http://msdn.microsoft.com/en-us/library/cc160716.aspx" target="_blank"&gt;explaining the 3.5 .Net framework&lt;/a&gt; in greater detail.&lt;/p&gt;
&lt;p&gt;I was both happy and surprised to find out that the .Net 3.5 framework download file is used for both 32-bit AND 64-bit systems.&amp;nbsp; So no you know too!&lt;/p&gt;</description></item><item><title>LinqToXSD? NO!! Linq To Schema...</title><link>http://www.willstrohl.com/Blog/PostId/184/LinqToXSD-NO-Linq-To-Schema</link><summary>I recently attended a ONETUG meeting where Linq To Schema was presented. It is really cool!  But I had a heck of time finding it.</summary><category>ASP.Net</category><pubDate>Mon, 06 Oct 2008 13:45:00 GMT</pubDate><description>&lt;p&gt;I had the pleasure of sitting in on a presentation given by &lt;a target="_blank" href="http://www.devfish.net"&gt;Joe Healy&lt;/a&gt; about Visual Studio.Net 2008 SP1.&amp;nbsp; As the tagline goes, &amp;quot;It's more than just a service pack.&amp;quot;&amp;nbsp; As it turns out, that is SO true.&lt;/p&gt;
&lt;p&gt;The feature that stood out to me the most was the built-in support for VB.Net coders like myself to easily program against XML objects.&amp;nbsp; As I remembered it, it was called &amp;quot;&lt;strong&gt;Linq To XSD&lt;/strong&gt;&amp;quot;, or &amp;quot;&lt;strong&gt;LinqToXSD&lt;/strong&gt;&amp;quot;.&amp;nbsp; After spending a few days looking for it, I have found that it is actually called &amp;quot;&lt;strong&gt;Linq To Schema&lt;/strong&gt;&amp;quot;!&amp;nbsp; Argh!&lt;/p&gt;
&lt;p&gt;Here are a couple of important links for this technology.&amp;nbsp; If you are not sure what this is, click the second link first.&amp;nbsp; It shows a demo.&amp;nbsp; The first link is just to download it.&amp;nbsp; I will let the video speak for itself...&lt;/p&gt;
&lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/vbasic/bb840042.aspx" target="_blank"&gt;http://msdn.microsoft.com/en-us/vbasic/bb840042.aspx&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://msdn.microsoft.com/en-us/vbasic/bb840042.aspx" target="_blank"&gt;http://msdn.microsoft.com/it-it/vbasic/bb887654(en-us).aspx&lt;/a&gt;&lt;/p&gt;</description></item><item><title>INETA Community Champions Program Award - Participant</title><link>http://www.willstrohl.com/Blog/PostId/183/INETA-Community-Champions-Program-Award-Partici</link><summary>I won an award!  I will be patting myself on the back, and buying myself a cookie for sure!</summary><category>ASP.Net</category><pubDate>Tue, 09 Sep 2008 12:00:00 GMT</pubDate><description>&lt;p&gt;There are already the somewhat well-known awards for the Champions Program.&amp;nbsp; But there is also the new monthly participant award.&amp;nbsp; This award is randomly awarded once a month to anyone that is participating in the Champions program.&lt;/p&gt;
&lt;p&gt;It just so happens that I was chosen this month!&amp;nbsp; Woo hoo!&lt;/p&gt;
&lt;p align="center"&gt;&lt;a href="http://www.ineta.org/newsletters/2008_09.htm" target="_blank"&gt;&lt;img hspace="5" height="125" border="0" width="137" vspace="5" src="/Portals/1/images/CommunityChampionsSmall.jpg" alt="INETA Community Champions Participant Award - September 2008" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://www.ineta.org/newsletters/2008_09.htm" target="_blank"&gt;INETA Community Champion Particpant Award - September 2008&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Don't forget about the ODUG meeting tomorrow.&amp;nbsp; See you there!&lt;/p&gt;
&lt;p&gt;&lt;a href="http://orlando.dotnetnukeug.net/Events.aspx" target="_blank"&gt;http://orlando.dotnetnukeug.net/Events.aspx&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Multithreaded Woes!</title><link>http://www.willstrohl.com/Blog/PostId/143/Multithreaded-Woes</link><summary>I have a project on deck where I am using a multi-threaded process to perform an action in the background while the web visitor looks at a pretty ad during the process.  And this is my story...</summary><category>ASP.Net</category><pubDate>Thu, 17 Apr 2008 12:00:00 GMT</pubDate><description>&lt;p&gt;Starting a thread, maintaining it are easy enough.&amp;nbsp; And as long as you have a reference to the thread, it is easy to wait for it.&amp;nbsp; However, this problem that I have just run into really sucks.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;I have a web&amp;nbsp;application where the visitor enters information into a search form, and then they are immediately forwarded to an advertisement while the search takes place in the background (hence the thread).&amp;nbsp; This thread does a bunch of stuff.&amp;nbsp; In fact, too much to mention...&lt;/p&gt;
&lt;p&gt;Well, I had this all working on my dual core notebook.&amp;nbsp; It was great!&amp;nbsp; With one exception, it worked flawlessly.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;As with any application, there comes a time to where it needs to be tested in a psuedo-production environment, and this is the time that I am about to speak of.&lt;/p&gt;
&lt;p&gt;I moved this piece of the web application to our test site.&amp;nbsp; I didn't expect anything to go wrong with the thread itself, but rather workflow logic.&amp;nbsp; Well, things nearly never work like we expect, do they?&lt;/p&gt;
&lt;p&gt;For some reason, the thread dies somewhere in the process, and I cannot figure out why.&amp;nbsp; This only happens on the server.&amp;nbsp; Argh!&lt;/p&gt;
&lt;p&gt;Okay - I am done venting...&lt;/p&gt;</description></item><item><title>FOLLOW UP - Multithreading Woes</title><link>http://www.willstrohl.com/Blog/PostId/144/FOLLOW-UP-Multithreading-Woes</link><summary>Here is what happened...</summary><category>ASP.Net</category><pubDate>Thu, 17 Apr 2008 12:00:00 GMT</pubDate><description>&lt;p&gt;Finally, I decided to wrap all of the methods being used by the new thread in TRY CATCH blocks.&amp;nbsp; This revealed a run time&amp;nbsp;error that wasn't being reported by the thread.&lt;/p&gt;
&lt;p&gt;I fixed that, and it all works again!&lt;/p&gt;</description></item><item><title>Common MultiThreading Compiler Error</title><link>http://www.willstrohl.com/Blog/PostId/141/Common-MultiThreading-Compiler-Error</link><summary>Here is something that was happening to me today when trying to spawn a new thread to perform some task...</summary><category>ASP.Net</category><pubDate>Mon, 14 Apr 2008 12:00:00 GMT</pubDate><description>&lt;p&gt;To prefix this, we often run into instances in&amp;nbsp;ASP.Net Programing, when we need to spawn a new thread to take care of some business while the original thread can continue serving the UI to the end user.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;This is normally not too complicated of a task, but when you don't use a specific methodology, some of its quirks or requirements can be forgotten.&amp;nbsp; For instance, I could not for the life of me get a new thread to compile.&amp;nbsp; I kept verifying with previously written code that I was doing it right.&amp;nbsp; And sure enough...&amp;nbsp; I was!&amp;nbsp; Yet I was still getting an error like this:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;font color="#ff0000"&gt;No accessible method '[METHODNAME]' matches the signature of delegate 'Delegate Sub ParameterizedThreadStart(obj As Object)'.&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I kept pouring my eyes over the code.&amp;nbsp; Something MUST be different, but what?&amp;nbsp; Well, eventually, the train came tumbling in, and squished all of the blinding thoughts out and I was able to see clearly again.&amp;nbsp; I was calling a Function in the new thread statement, and not a Sub.&amp;nbsp; Duh!&lt;/p&gt;
&lt;p&gt;Everything compiled and ran just fine after I changed the method to a Sub.&lt;/p&gt;
&lt;p&gt;Strangely enough, I was not able to find any help when searching for it on Google.&amp;nbsp; All of the SERPs were for other situations where multithreading was not involved.&lt;/p&gt;</description></item><item><title>String Performance Guide</title><link>http://www.willstrohl.com/Blog/PostId/136/String-Performance-Guide</link><summary>&amp;lt;p&amp;gt;I very often end up speaking to people about how much proper string handling, concatenation, and evaluation can increase the performance of a web site or application.  So I decided to write a guide about it...&amp;lt;/p&amp;gt;</summary><category>ASP.Net</category><pubDate>Tue, 25 Mar 2008 12:00:00 GMT</pubDate><description>&lt;p&gt;I tell many people of one of my favorite string optimization projects.&amp;#160; I was asked to lower the response time of a web service from its current response time of approximately 60 seconds to something much faster.&amp;#160; With it being a web service, that meant somewhere in the neighborhood of 1-5 seconds.&amp;#160;&lt;/p&gt;
&lt;p&gt;I immediately looked to see how the strings were being handled throughout the project.&amp;#160; With it using a MySQL back-end, there were many static queries in string objects and string XML node comparisons that were all using the standard string handling techniques.&lt;/p&gt;
&lt;p&gt;To make a long story short, after only overhauling the string handling throughout the application, I had brought the response time down to 1-3 seconds.&lt;/p&gt;
&lt;p&gt;Find my string optimization guide attached to this blog post.&amp;#160; I hope it helps you.&lt;/p&gt;
&lt;p&gt;&lt;a href="/Portals/1/Blog/Files/1/136/SSD_String_Optimization_Guide.pdf"&gt;SSD_String_Optimization_Guide.pdf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="/Portals/1/Blog/Files/3/136/SSD_String_Optimization_Guide.pdf"&gt;SSD_String_Optimization_Guide.pdf&lt;/a&gt;&lt;/p&gt;</description></item><item><title>HOW TO: Load an XPathDocument Using a String Object</title><link>http://www.willstrohl.com/Blog/PostId/93/HOW-TO-Load-an-XPathDocument-Using-a-String-Object</link><summary>For some odd reason, the XPathDocument class does not support loading the object using a string.  However, this seems to be an integral requirement for some applications where the XML is generated and parsed on-the-fly.  Here's how to do that...</summary><category>ASP.Net</category><pubDate>Fri, 07 Dec 2007 21:01:00 GMT</pubDate><description>&lt;p&gt;For some odd reason, the &lt;a target="_blank" href="http://msdn2.microsoft.com/en-us/library/system.xml.xpath.xpathdocument(VS.80).aspx"&gt;XPathDocument&lt;/a&gt; class does not support loading the object using a string.&amp;nbsp; However, this seems to be an integral requirement for some applications where the XML is generated and parsed on-the-fly.&amp;nbsp; Here's how to do that...&lt;/p&gt;
&lt;div style="border:1px solid #000000;overflow:auto;width:500px;height:100px;"&gt;&lt;pre&gt;Dim byteObj() As Byte
byteObj = System.Text.Encoding.UTF8.GetBytes(SerializedObject)
Dim memStr As System.IO.MemoryStream = New System.IO.MemoryStream(byteObj)
Dim xpathDoc As XPathDocument = New XPathDocument(memStr)&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;That is only four lines of code.&amp;nbsp; Hey!&amp;nbsp; That's pretty good...&amp;nbsp; But what if you didn't want to use four lines?&amp;nbsp; Can't we bring this down to less lines of code?&amp;nbsp; Yes!&amp;nbsp; Here is the same example in only two lines of code, and less memory overhead, because there are also less objects.&lt;/p&gt;
&lt;div style="border:1px solid #000000;overflow:auto;width:500px;height:80px;"&gt;&lt;pre&gt;Dim memStr As System.IO.MemoryStream = New System.IO.MemoryStream(System.Text.Encoding.UTF8.GetBytes(SerializedObject))
Dim xpathDoc As XPathDocument = New XPathDocument(memStr)&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;What if you wanted to globalize this to make it even easier?&amp;nbsp; Couldn't you add this as a shared/static function to an existing class?&amp;nbsp; Sure, but it could get even better...&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You can take that a step further by extending the XPathDocument class, for use in your entire application.&amp;nbsp; This way, you have then limited those two lines of code to one - each time you do it.&amp;nbsp; Don't forget that your footprint is also smaller since you are extending an existing class.&lt;/p&gt;
&lt;div style="border:1px solid #000000;overflow:auto;width:500px;height:330px;"&gt;&lt;pre&gt;Imports System.IO
Imports System.Text
Imports System.Xml
Imports System.Xml.XPath&lt;br /&gt;
Namespace MyCompany.Extensions&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Class XPathDocument
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Inherits System.Xml.XPath.XPathDocument&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public Sub New(ByVal xmlString As String)
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyBase.New(New MemoryStream(Encoding.UTF8.GetBytes(xmlString)))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; End Class&lt;br /&gt;
End Namespace&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Now, you can call this from anywhere in your code like so:&lt;/p&gt;
&lt;div style="border:1px solid #000000;overflow:auto;width:500px;height:100px;"&gt;&lt;pre&gt;Dim strXml As String = "&amp;lt;rootNode&amp;gt;&amp;lt;element1&amp;gt;somevalue&amp;lt;/element1&amp;gt;&amp;lt;/rootNode&amp;gt;"
Dim xpathDoc As New MyCompany.Extensions.XPathDocument(strXml)&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Now, we have reduced this to one line of code! :) Have fun!&lt;/p&gt;</description></item><item><title>HOW TO: Implement a Client-Side Form on .Net Apps</title><link>http://www.willstrohl.com/Blog/PostId/87/HOW-TO-Implement-a-Client-Side-Form-on-Net-Apps</link><summary>There are times when you need to incorporate a client-side form on your web form, user control, or DNN module.  As you probably already know, this will not work.  By default, ASP.Net doesn't allow child forms anymore.</summary><category>ASP.Net</category><pubDate>Thu, 15 Nov 2007 04:37:46 GMT</pubDate><description>&lt;p&gt;There are times when you need to incorporate a client-side form on your web form, user control, or DNN module.&amp;nbsp; As you probably already know, this will not work.&amp;nbsp; By default, ASP.Net doesn't allow child forms anymore.&lt;/p&gt;
&lt;p&gt;An example of this may be if you use a 3rd party provider for services, such as a newsletter provider.&amp;nbsp; In those instances, you typically have two choices.&amp;nbsp; First, you could just send your visitors to their web site.&amp;nbsp; Second, you can implement a submission process right on your own site.&lt;/p&gt;
&lt;p&gt;The trick to doing this, is to &amp;quot;trick&amp;quot; ASP.Net.&amp;nbsp; I built a hybrid class based on the example found at &lt;a target="_blank" href="http://www.codeproject.com/"&gt;Code Project&lt;/a&gt;.&amp;nbsp; You use your normal method to collect the informatoin, and then use client-side code to complete the process.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;PLEASE NOTE&lt;/u&gt;:&lt;/strong&gt; This example &lt;u&gt;requires&lt;/u&gt; a postback, but in this situation, your end-users will likely expect this anyway.&lt;/p&gt;
&lt;p&gt;For example, let's say that you have a form that your vendor wants you to use, and it looks like the following form:&lt;/p&gt;
&lt;div style="border:1px solid #000000;width:500px;height:200px;overflow:auto;"&gt;
&lt;pre&gt;&amp;lt;form name=&amp;quot;frmSignUp&amp;quot; id=&amp;quot;frmSignUp&amp;quot; action=&amp;quot;http://www.somedomain.com/signup.asp&amp;quot; method=&amp;quot;get&amp;quot;&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input type=&amp;quot;hidden&amp;quot; name=&amp;quot;hidAffiliateId&amp;quot; id=&amp;quot;hidAffiliateId&amp;quot; value=&amp;quot;12345&amp;quot; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; First name: &amp;lt;input type=&amp;quot;text&amp;quot; name=&amp;quot;txtFirstName&amp;quot; id=&amp;quot;txtFirstName&amp;quot; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Last name: &amp;lt;input type=&amp;quot;text&amp;quot; name=&amp;quot;txtLastName&amp;quot; id=&amp;quot;txtLastName&amp;quot; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; E-Mail: &amp;lt;input type=&amp;quot;text&amp;quot; name=&amp;quot;txtEmail&amp;quot; id=&amp;quot;txtEmail&amp;quot; /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;br /&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;input type=&amp;quot;submit&amp;quot; name=&amp;quot;cmdSubmit&amp;quot; id=&amp;quot;cmdSubmit&amp;quot; value=&amp;quot;Submit&amp;quot; /&amp;gt;&lt;br /&gt;&amp;lt;/form&amp;gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The above form allows you to complete this project as expected on a static HTML page.&amp;nbsp; However, we need to perform a work-around to get this to work with ASP.Net.&lt;/p&gt;
&lt;p&gt;The first thing we need to do is convert this to a server-side form.&amp;nbsp; Here is the converted example:&lt;/p&gt;
&lt;div style="border:1px solid #000000;width:500px;height:200px;overflow:auto;"&gt;&lt;pre&gt;First name: &amp;lt;asp:TextBox id=&amp;quot;txtFirstName&amp;quot; runat=&amp;quot;server&amp;quot; /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;Last name: &amp;lt;asp:TextBox id=&amp;quot;txtLastName&amp;quot; runat=&amp;quot;server&amp;quot; /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;E-Mail: &amp;lt;asp:TextBox id=&amp;quot;txtEmail&amp;quot; runat=&amp;quot;server&amp;quot; /&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;&amp;lt;asp:Button id=&amp;quot;cmdSubmit&amp;quot; runat=&amp;quot;server&amp;quot; Text=&amp;quot;Submit&amp;quot; /&amp;gt;&lt;br /&gt;&amp;lt;asp:Literal id=&amp;quot;Literal1&amp;quot; runat=&amp;quot;server&amp;quot; /&amp;gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;That part was easy, but now need a way to perform this client to server to client &amp;quot;magic&amp;quot;.&amp;nbsp; We need a .Net class that will mimic the properties expressed in the HTML form.&amp;nbsp; Here is an example of my class.&lt;/p&gt;
&lt;div style="border:1px solid #000000;width:500px;height:700px;overflow:auto;"&gt;&lt;pre&gt;''' &amp;lt;summary&amp;gt;&lt;br /&gt;''' WebForm&lt;br /&gt;''' &amp;lt;/summary&amp;gt;&lt;br /&gt;''' &amp;lt;remarks&amp;gt;&amp;lt;/remarks&amp;gt;&lt;br /&gt;''' &amp;lt;history&amp;gt;&lt;br /&gt;''' [wstrohl] - 20070803 - Created by Will Strohl - &lt;a href="http://www.strohlsitedesign.com"&gt;http://www.strohlsitedesign.com&lt;/a&gt;&lt;br /&gt;''' &amp;lt;/history&amp;gt;&lt;br /&gt;Public Class WebForm&lt;/pre&gt;
&lt;pre&gt;#Region &amp;quot; Properties &amp;quot;&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private p_Fields As SortedList(Of String, String) = Nothing&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' A collection of the fields that you need to have as fields in the dynamically generated form.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;value&amp;gt;SortedList(Of String, String)&amp;lt;/value&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;returns&amp;gt;SortedList(Of String, String) - a collection of the fields that will be inserted into the form&amp;lt;/returns&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;remarks&amp;gt;&amp;lt;/remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Public ReadOnly Property Fields() As SortedList(Of String, String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Get&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return Me.p_Fields&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Get&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private p_Method As String = &amp;quot;post&amp;quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' Method - the method that the form will use to submit the field data.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;value&amp;gt;String&amp;lt;/value&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;returns&amp;gt;String - this property will only accept and return &amp;quot;get&amp;quot; or &amp;quot;post&amp;quot;. &amp;quot;post&amp;quot; is the default.&amp;lt;/returns&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' If for some reason a value other than &amp;quot;get&amp;quot; or &amp;quot;post&amp;quot; is assigned to this property, this property will &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' automatically default to &amp;quot;post&amp;quot;.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Property Method() As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Get&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If String.IsNullOrEmpty(Me.p_Method) Then Me.p_Method = &amp;quot;post&amp;quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return Me.p_Method&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Get&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set(ByVal Value As String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim re As New Regex(&amp;quot;^(post|get)$&amp;quot;, RegexOptions.IgnoreCase)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If re.IsMatch(Value) Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Method = Value&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Method = &amp;quot;post&amp;quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Set&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private p_Action As String = String.Empty&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' Action - this is the URL or path that the form will submit the information to.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;value&amp;gt;String&amp;lt;/value&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;returns&amp;gt;String - the URL or path that the form will submit to&amp;lt;/returns&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' If this property is not populated, the &amp;quot;ToString&amp;quot; method of this class will throw an exception.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Property Action() As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Get&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return Me.p_Action&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Get&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set(ByVal Value As String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Action = Value&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Set&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private p_AutoPost As Boolean = True&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' AutoPost - this property tells this class whether the form will submit itself onload or not&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;value&amp;gt;&amp;lt;/value&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;returns&amp;gt;Boolean - the true or false value whether this form will automatically attempt &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' to submit the dynamically generated form (default is true)&amp;lt;/returns&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;remarks&amp;gt;&amp;lt;/remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Property AutoPost() As Boolean&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Get&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return Me.p_AutoPost&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Get&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set(ByVal Value As Boolean)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_AutoPost = Value&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Set&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Private p_Name As String = String.Empty&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' Name - the name and id of the form that will be created&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;value&amp;gt;String&amp;lt;/value&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;returns&amp;gt;String - the name and id of the form&amp;lt;/returns&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' If you do not add a name, one will be generated for you.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Property Name() As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Get&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return Me.p_Name&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Get&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Set(ByVal Value As String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Name = Value&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Set&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Property&lt;/pre&gt;
&lt;pre&gt;#End Region&lt;/pre&gt;
&lt;pre&gt;#Region &amp;quot; Constructors &amp;quot;&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' New - this method instantiates the class&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;remarks&amp;gt;&amp;lt;/remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub New()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_AutoPost = True&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Fields = New SortedList(Of String, String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Method = &amp;quot;post&amp;quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Name = String.Concat(&amp;quot;Form_&amp;quot;, DateTime.Now.ToString(&amp;quot;MMddyyyyhhmmss&amp;quot;))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Action = String.Empty&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' New - this method instantiates the class&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;param name=&amp;quot;FormAction&amp;quot;&amp;gt;String - the URL or path that the form will submit to&amp;lt;/param&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' POSSIBLE EXCEPTIONS:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' ArgumentNullException - this will occur if of the argument is Null or Empty&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub New(ByVal FormAction As String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' BEGIN VALIDATION&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If String.IsNullOrEmpty(FormAction) Then _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Throw New ArgumentNullException(&amp;quot;The FormAction argument cannot be NULL or empty!&amp;quot;)&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' END VALIDATION&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_AutoPost = True&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Fields = New SortedList(Of String, String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Method = &amp;quot;post&amp;quot;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Name = String.Concat(&amp;quot;Form_&amp;quot;, DateTime.Now.ToString(&amp;quot;MMddyyyyhhmmss&amp;quot;))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Action = FormAction&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' New - this method instantiates the class&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;param name=&amp;quot;FormAction&amp;quot;&amp;gt;String - the URL or path that the form will submit to&amp;lt;/param&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;param name=&amp;quot;FormMethod&amp;quot;&amp;gt;String - the method that will be used to submit the form (&amp;quot;get&amp;quot; or &amp;quot;post&amp;quot;)&amp;lt;/param&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' POSSIBLE EXCEPTIONS:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' ArgumentNullException - this will occur if any of the arguments are Null or Empty&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub New(ByVal FormAction As String, ByVal FormMethod As String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' BEGIN VALIDATION&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If String.IsNullOrEmpty(FormAction) Then _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Throw New ArgumentNullException(&amp;quot;The FormAction argument cannot be NULL or empty!&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If String.IsNullOrEmpty(FormMethod) Then _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Throw New ArgumentNullException(&amp;quot;The FormMethod argument cannot be NULL or empty!&amp;quot;)&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' END VALIDATION&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_AutoPost = True&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Fields = New SortedList(Of String, String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Method = FormMethod&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Name = String.Concat(&amp;quot;Form_&amp;quot;, DateTime.Now.ToString(&amp;quot;MMddyyyyhhmmss&amp;quot;))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Action = FormAction&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' New - this method instantiates the class&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;param name=&amp;quot;FormAction&amp;quot;&amp;gt;String - the URL or path that the form will submit to&amp;lt;/param&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;param name=&amp;quot;FormMethod&amp;quot;&amp;gt;String - the method that will be used to submit the form (&amp;quot;get&amp;quot; or &amp;quot;post&amp;quot;)&amp;lt;/param&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;param name=&amp;quot;FormName&amp;quot;&amp;gt;String - then name and id that you wish for the form to have&amp;lt;/param&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' POSSIBLE EXCEPTIONS:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' ArgumentNullException - this will occur if any of the arguments are Null or Empty&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub New(ByVal FormAction As String, ByVal FormMethod As String, ByVal FormName As String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' BEGIN VALIDATION&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If String.IsNullOrEmpty(FormAction) Then _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Throw New ArgumentNullException(&amp;quot;The FormAction argument cannot be NULL or empty!&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If String.IsNullOrEmpty(FormMethod) Then _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Throw New ArgumentNullException(&amp;quot;The FormMethod argument cannot be NULL or empty!&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If String.IsNullOrEmpty(FormName) Then _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Throw New ArgumentNullException(&amp;quot;The FormName argument cannot be NULL or empty!&amp;quot;)&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' END VALIDATION&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_AutoPost = True&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Fields = New SortedList(Of String, String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Method = FormMethod&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Name = FormName&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.p_Action = FormAction&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/pre&gt;
&lt;pre&gt;#End Region&lt;/pre&gt;
&lt;pre&gt;#Region &amp;quot; Public Methods &amp;quot;&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' AddField - this method allows you to add a field to the form.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;param name=&amp;quot;FieldName&amp;quot;&amp;gt;String - the name of the field to add&amp;lt;/param&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;param name=&amp;quot;FieldValue&amp;quot;&amp;gt;String - the value of the field to add&amp;lt;/param&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' These fields will be rendered as &amp;quot;Hidden&amp;quot; input fields.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' You can send an empty string to the FieldValue argument, but the FieldName is required.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Sub AddField(ByVal FieldName As String, ByVal FieldValue As String)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' BEGIN VALIDATION&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If String.IsNullOrEmpty(FieldName) Then _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Throw New ArgumentNullException(&amp;quot;The FieldName argument cannot be NULL or empty!&amp;quot;)&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' END VALIDATION&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Me.Fields.Add(FieldName, FieldValue)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Sub&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' ToString - this override of the ToString method outputs the Form and its required &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' JavaScript.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/summary&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;returns&amp;gt;String - the form, its fields, and its JavaScript&amp;lt;/returns&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' If AutoPost is set to True, then the JavaScript will automatically submit the &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' form once the page loads.&amp;nbsp; Otherwise, you should add a client-side script to call &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' the JavaScript &amp;quot;submitWebForm&amp;quot; function.&amp;nbsp; There are no parameters.&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ''' &amp;lt;/remarks&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Overrides Function ToString() As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' BEGIN VALIDATION&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If String.IsNullOrEmpty(Me.Action) Then _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Throw New ArgumentNullException(&amp;quot;The ToString() method cannot be processed without the 'Action' property assigned.&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not Me.Fields.Count &amp;gt; 0 Then _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Throw New ArgumentNullException(&amp;quot;The ToString() method cannot be processed without any Fields added.&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If String.IsNullOrEmpty(Me.Name) Then _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Throw New ArgumentNullException(&amp;quot;The ToString() method cannot be processed without the Form 'Name' property assigned.&amp;quot;)&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' END VALIDATION&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; '&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim sb As New StringBuilder&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; With sb&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' create the form tag&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;&amp;lt;form id=&amp;quot;&amp;quot;&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(Me.Name)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;&amp;quot;&amp;quot; name=&amp;quot;&amp;quot;&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(Me.Name)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;&amp;quot;&amp;quot; action=&amp;quot;&amp;quot;&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(Me.Action)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;&amp;quot;&amp;quot; method=&amp;quot;&amp;quot;&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(Me.Method)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;&amp;quot;&amp;quot;&amp;gt;&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(Environment.NewLine)&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' loop through and add the form fields&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For Each kvp As KeyValuePair(Of String, String) In Me.Fields&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;&amp;lt;input type=&amp;quot;&amp;quot;hidden&amp;quot;&amp;quot; id=&amp;quot;&amp;quot;&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(kvp.Key)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;&amp;quot;&amp;quot; name=&amp;quot;&amp;quot;&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(kvp.Key)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;&amp;quot;&amp;quot; value=&amp;quot;&amp;quot;&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(kvp.Value)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;&amp;quot;&amp;quot; /&amp;gt;&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(Environment.NewLine)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' close the form tag&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;&amp;lt;/form&amp;gt;&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(Environment.NewLine)&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' add javascript to automatically &amp;quot;submit&amp;quot; the form&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;&amp;lt;script type=&amp;quot;&amp;quot;text/javascript&amp;quot;&amp;quot; language=&amp;quot;&amp;quot;javascript&amp;quot;&amp;quot;&amp;gt;/*&amp;lt;![CDATA[*/&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not Me.AutoPost Then .Append(&amp;quot;function submitWebForm(){&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;document.getElementById('&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(Me.Name)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;').submit();&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not Me.AutoPost Then .Append(&amp;quot;}&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .Append(&amp;quot;/*]]&amp;gt;*/&amp;lt;/script&amp;gt;&amp;quot;)&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End With&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return sb.ToString&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Function&lt;/pre&gt;
&lt;pre&gt;#End Region&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Class&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;The above class allows you to generate this form server-side and then automatically execute it client-side.&amp;nbsp; But how do you use this class?&amp;nbsp; Here is an example of the server-side event that we will use to accomplish this.&lt;/p&gt;
&lt;div style="border:1px solid #000000;width:500px;height:200px;overflow:auto;"&gt;&lt;pre&gt;Protected Sub cmdSubmit_Click(ByVal sender As Object, ByVal e As System.Web.UI.ButtonClickEventArgs) Handles cmdSubmit.Click&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim objWebForm As New WebForm(&amp;quot;http://www.somedomain.com/signup.asp&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; With objWebForm&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .AddField(&amp;quot;hidAffiliateId&amp;quot;, &amp;quot;12345&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .AddField(&amp;quot;txtFirstName&amp;quot;, txtFirstName.Text)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .AddField(&amp;quot;txtLastName&amp;quot;, txtLastName.Text)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .AddField(&amp;quot;txtEmailName&amp;quot;, txtEmail.Text)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End With&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' add this dynamically created form to the page&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Literal1.Text &amp;amp;= wf.ToString&lt;/pre&gt;
&lt;pre&gt;End Sub&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Once you have the above code snippets in place, run your web application, and you will have a fully functional client-side form.&lt;/p&gt;</description></item><item><title>Using JavaScript to change the image on a page</title><link>http://www.willstrohl.com/Blog/PostId/30/Using-JavaScript-to-change-the-image-on-a-page</link><summary>I recently had a project where the home page for a web site called for an image that loaded randomly each time the page is loaded. For example, the first time you viewed the home page, you might be looking at monkeys, the next time a llama, and so on.</summary><category>ASP.Net</category><pubDate>Mon, 17 Sep 2007 19:56:05 GMT</pubDate><description>&lt;p&gt;I recently had a project where the home page for a web site called for an image that loaded randomly each time the page is loaded. For example, the first time you viewed the home page, you might be looking at monkeys, the next time a llama, and so on.&lt;/p&gt;
&lt;p&gt;This worked fine for a while, but as most ideas do, this grew to where the clients wanted to see the image reload frequently on the homepage while viewing it as well. That is fine, but what is the easiest way to do it?&lt;/p&gt;
&lt;p&gt;Most of you probably already know that there are probably 100 different ways to do any single task when it comes to web design. In knowing this, I normally try a new way every time it comes to doing something. I like this approach to design because I feel it keeps me well-rounded and open to new ideas.&lt;/p&gt;
&lt;p&gt;One script that I have come to use somewhat frequently is the xGetElementById script from &lt;a target="_blank" href="http://www.cross-browser.com/"&gt;Cross-Browser.com&lt;/a&gt;. This is a very easy, fast, and dependable way of using JavaScript to work work with HTML objects on your web page.&lt;/p&gt;
&lt;p&gt;Here is what I did this time to accomplish this task... First I created the HTML and accompanying design as usual (HTML, CSS, etc.). Then, where I wanted the image to randomly change, I did not place the image. I instead used CSS to specify the background image for a table cell. In addition, the CSS specified other attributes to make sure that the image would be properly displayed.&lt;/p&gt;
&lt;p&gt;Now, before you get started, you need to figure out the CORRECT size in pixels that you want or need your image to be and crop all of the images that will used to switch out to be the same dimensions.&lt;/p&gt;
&lt;p&gt;Here is an example of the first CSS snippet. Notice the use of the number &amp;quot;01&amp;quot; in the class name. There should be a class for each image that you have. To keep things simple, it is normally best to name the image something similar to the class name.&lt;/p&gt;
&lt;div style="border-right: #000000 1px solid; border-top: #000000 1px solid; overflow: auto; border-left: #000000 1px solid; width: 500px; border-bottom: #000000 1px solid; height: 150px"&gt;
&lt;pre&gt;.homepage_image_01{&lt;br /&gt;
background-image: url(homepage_images/homepage_img_01.jpg);&lt;br /&gt;
background-position: top left;&lt;br /&gt;
background-repeat: no-repeat;&lt;br /&gt;
}&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;This bit of CSS told the HTML to load the image named &amp;quot;homepage_img_01.jpg&amp;quot; into the background of the element that uses the class name &amp;quot;homepage_image_01&amp;quot;.&lt;/p&gt;
&lt;p&gt;The HTML where this class name is used, looks like so:&lt;/p&gt;
&lt;div style="border-right: #000000 1px solid; border-top: #000000 1px solid; overflow: auto; border-left: #000000 1px solid; width: 500px; border-bottom: #000000 1px solid; height: 150px"&gt;
&lt;pre&gt;&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td id="cellImages"&amp;gt;&lt;br /&gt;
&amp;lt;div class=" style="width: 502px; height: 242px" onclick="switchImage();"&amp;gt;&amp;amp;nbsp;&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;/tr&amp;gt;&lt;br /&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Notice the use of the class &amp;quot;cellImages&amp;quot;. This class is telling the table cell to be a specific size - the same dimensions as the size of the images, in pixels. Next, there is a DIV with the name and dimensions of our images. Notice that the class name matches the example above. As an added bonus, I put the name of the JavaScript function in the ONCLICK tag (seen below). This will enable the web site visitor to change the image at will.&lt;/p&gt;
&lt;p&gt;The JavaScript that wraps it all up with a neat little bow gets placed at the END OF THE PAGE. This code assumes that there are 10 images. There could be more or less images. You would need to adjust the JavaScript to account for more or less images though. Here is what the script looks like:&lt;/p&gt;
&lt;div style="border-right: #000000 1px solid; border-top: #000000 1px solid; overflow: auto; border-left: #000000 1px solid; width: 500px; border-bottom: #000000 1px solid; height: 600px"&gt;
&lt;pre&gt;/*&lt;br /&gt;
(C) 2007 StrohlSiteDesign.com. All rights reserved.&lt;br /&gt;
This script and the rights to use it are protected by U.S. and Internationl copyright laws. Copying of any of this code is prohibted by law.&lt;br /&gt;
Written by : Will Strohl (wills-at-strohlsitedesign-dot-com)&lt;br /&gt;
Date Created : 02/08/2006&lt;br /&gt;
Date Last Modified : 01/10/2007&lt;br /&gt;
You are free to use this script as long as the above copyright statements are left intact.&lt;br /&gt;
*/&lt;br /&gt;
// number of miliseconds between each image load&lt;br /&gt;
// 7000 = 7 seconds&lt;br /&gt;
var numInterval = 7000;&lt;br /&gt;
// initialize the timeout object&lt;br /&gt;
var toImages = setTimeout('switchImage()',numInterval);&lt;br /&gt;
// perform the first 'switch'&lt;br /&gt;
switchImage();&lt;br /&gt;&lt;br /&gt;
// BEGIN xGetElementById&lt;br /&gt;
// (the following snippet requires its own copyright)&lt;br /&gt;
// xGetElementById, Copyright 2001-2007 Michael Foster (Cross-Browser.com)&lt;br /&gt;
// Part of X, a Cross-Browser Javascript Library, Distributed under the terms of the GNU LGPL&lt;br /&gt;
function xGetElementById(e){&lt;br /&gt;
if(typeof(e)=='string') {&lt;br /&gt;
if(document.getElementById) e=document.getElementById(e);&lt;br /&gt;
else if(document.all) e=document.all[e];&lt;br /&gt;
else e=null;&lt;br /&gt;
}&lt;br /&gt;
return e;&lt;br /&gt;
}&lt;br /&gt;
// END xGetElementById&lt;br /&gt;&lt;br /&gt;
function switchImage(){&lt;br /&gt;
// clear the original timeout so that there are not&lt;br /&gt;
// multiple timeouts running at the same time&lt;br /&gt;
clearTimeout(toImages);&lt;br /&gt;
var rn=Math.floor(Math.random()*10);&lt;br /&gt;
switch(rn){&lt;br /&gt;
case 0:&lt;br /&gt;
xGetElementById('divImages').className='homepage_image_01';&lt;br /&gt;
break;&lt;br /&gt;
case 1:&lt;br /&gt;
xGetElementById('divImages').className='homepage_image_02';&lt;br /&gt;
break;&lt;br /&gt;
case 2:&lt;br /&gt;
xGetElementById('divImages').className='homepage_image_03';&lt;br /&gt;
break;&lt;br /&gt;
case 3:&lt;br /&gt;
xGetElementById('divImages').className='homepage_image_04';&lt;br /&gt;
break;&lt;br /&gt;
case 4:&lt;br /&gt;
xGetElementById('divImages').className='homepage_image_05';&lt;br /&gt;
break;&lt;br /&gt;
case 5:&lt;br /&gt;
xGetElementById('divImages').className='homepage_image_06';&lt;br /&gt;
break;&lt;br /&gt;
case 6:&lt;br /&gt;
xGetElementById('divImages').className='homepage_image_07';&lt;br /&gt;
break;&lt;br /&gt;
case 7:&lt;br /&gt;
xGetElementById('divImages').className='homepage_image_08';&lt;br /&gt;
break;&lt;br /&gt;
case 8:&lt;br /&gt;
xGetElementById('divImages').className='homepage_image_09';&lt;br /&gt;
break;&lt;br /&gt;
case 9:&lt;br /&gt;
xGetElementById('divImages').className='homepage_image_10';&lt;br /&gt;
break;&lt;br /&gt;
}&lt;br /&gt;
// reset the time to call the switch again&lt;br /&gt;
toImages = setTimeout('switchImage()',numInterval);&lt;br /&gt;
}&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Notice that all this script does is locate the DIV with the ID of &amp;quot;divImages&amp;quot; and then it changes the class name to the randomly chosen one.&lt;/p&gt;
&lt;p&gt;If the visitor cannot use or has disabled JavaScript, the image used would be the one initially specified in the DIV tag.&lt;/p&gt;
&lt;p&gt;Naturally, you could use a GIF animation or Flash to accomplish this. However, like I said before, I like to try different things whenever I can. Have fun!&lt;/p&gt;</description></item><item><title>HOW TO: Select/Deselect All Checkboxes</title><link>http://www.willstrohl.com/Blog/PostId/75/HOW-TO-SelectDeselect-All-Checkboxes</link><summary>Invariably, at some point you will have a control that needs to display a list of options as a checkbox list.  In order for our application to be user-friendly, we will need to provide the ability for the end-user to Select All checkboxes with a single click, as well as uncheck all checkboxes.  With a bit of client-side code, this is easily achieved.</summary><category>ASP.Net</category><pubDate>Wed, 15 Aug 2007 14:45:18 GMT</pubDate><description>&lt;p&gt;Invariably, at some point you will have a control that needs to display a list of options as a checkbox list.&amp;nbsp; In order for our application to be user-friendly, we will need to provide the ability for the end-user to Select All checkboxes with a single click, as well as uncheck all checkboxes.&amp;nbsp; With a bit of client-side code, this is easily achieved.&lt;/p&gt;
&lt;p&gt;First of all, you will need to have a UserControl or Page that has a CheckBoxList control added to it.&amp;nbsp; Next, you need to have a DataSource loading into the CheckBoxList control.&amp;nbsp; These steps are outside of the scope of this blog entry.&lt;/p&gt;
&lt;p&gt;Once you have accomplished the preceding steps, it will be important that you have the checkboxes contained inside of a parent element.&amp;nbsp; If you have the CheckBoxList RepeatLayout set to &amp;quot;table&amp;quot;, then this is already done for you.&amp;nbsp; Otherwise, you should have the checkbox list in a DIV or TD with&amp;nbsp;the Id attribute assigned to it.&amp;nbsp; It is &lt;u&gt;imperative&lt;/u&gt; that the value you assign to the Id attribute be unqiue on the entire page.&lt;/p&gt;
&lt;p&gt;The result should be something like the following:&lt;/p&gt;
&lt;div style="overflow:auto;width:500px;height:75px;border: solid 1px #0000ff;"&gt;
&lt;pre&gt;&amp;lt;asp:CheckBoxList ID=&amp;quot;CheckBoxList1&amp;quot; runat=&amp;quot;server&amp;quot; CssClass=&amp;quot;Normal&amp;quot; &lt;br /&gt;RepeatColumns=&amp;quot;3&amp;quot; RepeatDirection=&amp;quot;horizontal&amp;quot; RepeatLayout=&amp;quot;table&amp;quot; &lt;br /&gt;TextAlign=&amp;quot;right&amp;quot; /&amp;gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Next, we will need a few client-side events to handle the select all or deselect all action that the end-user will initiate through a click of their mouse.&amp;nbsp; Here are some examples of what you may use:&lt;/p&gt;
&lt;div style="overflow:auto;width:500px;height:200px;border: solid 1px #0000ff;"&gt;
&lt;pre&gt;function selectAllCheckBoxes(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var ctrl = document.getElementById('&amp;lt;%= Me.CheckBoxList1.ClientID %&amp;gt;');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var col = ctrl.getElementsByTagName('input');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var chkSelected = (!areCheckboxesSelected());&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i = 0; i &amp;lt; col.length; i++){col[i].checked = chkSelected;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; chkSelected = !chkSelected;&lt;br /&gt;}&lt;/pre&gt;
&lt;pre&gt;function validateCheckboxes(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var ctrl = document.getElementById('&amp;lt;%= Me.CheckBoxList1.ClientID %&amp;gt;');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var col = ctrl.getElementsByTagName('input');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var blnResult = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var intCount = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i = 0; i &amp;lt; col.length; i++){if(col[i].checked){intCount = intCount + 1;}}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(intCount == 0){alert('Please check at least one checkbox.');return false;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;}&lt;/pre&gt;
&lt;pre&gt;function areCheckboxesSelected(){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var ctrl = document.getElementById('&amp;lt;%= Me.CheckBoxList1.ClientID %&amp;gt;');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var col = ctrl.getElementsByTagName('input');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i = 0; i &amp;lt; col.length; i++){if(col[i].checked){return true;}}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;}&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Finally, you will need a link on the page to allow the end-user to initiate the event we will create soon.&amp;nbsp; Really, you can use any HTML element that allows the &amp;quot;onclick&amp;quot; attribute, but we will just use a link here.&lt;/p&gt;
&lt;div style="overflow:auto;width:500px;height:50px;border: solid 1px #0000ff;"&gt;
&lt;pre&gt;&amp;lt;a href=&amp;quot;javascript:void(0);&amp;quot; onclick=&amp;quot;selectAllCheckBoxes();&amp;quot;&amp;gt;Select/Deselect All&amp;lt;/a&amp;gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Yippee!&amp;nbsp; It works!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Once all of these pieces are in place, you should be able to run your project and see the results.&amp;nbsp; Go ahead and try in Firefox and IE.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Important Side-Note&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;On a side-note, it would be a great idea for you to install the Firebug plug-in for FireFox, and the IE Developer add-on for Internet Explorer.&amp;nbsp; These tools had proved to be extremely helpful in creating and debugging client-side JavaScript and HTML markup.&lt;/p&gt;</description></item><item><title>HOW TO: Return the Database Name from a Connection String</title><link>http://www.willstrohl.com/Blog/PostId/73/HOW-TO-Return-the-Database-Name-from-a-Connection</link><summary>Have you ever worked with an application that had many different connection strings and databases?  It is sometimes necessary to grab some information from those connection strings.  I have run into such a situation recently.  Here is how to grab the database name from the connection string.</summary><category>ASP.Net</category><pubDate>Mon, 13 Aug 2007 13:44:36 GMT</pubDate><description>&lt;p&gt;Have you ever worked with an application that had many different connection strings and databases?&amp;nbsp; It is sometimes necessary to grab some information from those connection strings.&amp;nbsp; I have run into such a situation recently.&amp;nbsp; Here is how to grab the database name from the connection string.&lt;/p&gt;
&lt;p&gt;First of all, I am making use of Regular Expression in order to perform this task.&amp;nbsp; In doing so, I am right now assuming that the only&amp;nbsp;parameters in a connection string that specify a database name are &amp;quot;Initial Catalog&amp;quot; and &amp;quot;Database&amp;quot;.&amp;nbsp; This is true of SQL Server, but for other datasources, you will need to ammend the regular expression to reflect your own datasource connection string parameters.&lt;/p&gt;
&lt;p&gt;Here is the snippet that will return a database name from your connection string:&lt;/p&gt;
&lt;div style="overflow: auto; width: 500px; height: 400px"&gt;
&lt;pre&gt;Public Shared Function GetDatabaseName(ByVal ConnectionString As String) As String&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim strValue As String = String.Empty&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If Not String.IsNullOrEmpty(ConnectionString) Then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Try&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim re As New Regex(&amp;quot;(Initial Catalog=|Database=){1}([\w-]+)[;]?&amp;quot;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' this should match:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' $0 = Initial Catalog=DATABASENAME;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' $1 = Initial Catalog=&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' $2 = DATABASENAME&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' ... OR ...&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' $0 = Database=DATABASENAME;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' $1 = DataBase=&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' $2 = DATABASENAME&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' return just the DB name from the connection string&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strValue = re.Match(ConnectionString).Groups(2).Value&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Catch&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strValue = String.Empty&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Try&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; strValue = String.Empty&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;/pre&gt;
&lt;pre&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Return strValue.Trim&lt;br /&gt;End Function&amp;nbsp;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;As you can see, we first set a local object to hold our return value.&amp;nbsp; It is automatically set to return an empty string.&amp;nbsp; Next, as long as the argument passed into the method is populated, we test the string against our regular expression.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;This regular expression will return three match groups, as long as there is a database parameter in the connection string.&amp;nbsp; The third group is the value we really want.&amp;nbsp; So, we return the trimmed value of that (just in case there are any additional leading or trailing spaces).&lt;/p&gt;</description></item><item><title>HOW TO: Escape Single Quotes for JavaScript Strings</title><link>http://www.willstrohl.com/Blog/PostId/67/HOW-TO-Escape-Single-Quotes-for-JavaScript-Strings</link><summary>While I was writing a class to allow me to quickly grab preformatted JavaScript functions (i.e., confirm, alert, etc.), I came across the need to ensure that a string passed into those methods would not throw a JavaScript error upon rendering.  This could possibly happen if the message contained singles quotes for contractions, quotes, etc.</summary><category>ASP.Net</category><pubDate>Wed, 27 Jun 2007 07:00:00 GMT</pubDate><description>&lt;p&gt;While I was writing a class to allow me to quickly grab preformatted JavaScript functions (i.e., confirm, alert, etc.), I came across the need to ensure that a string passed into those methods would not throw a JavaScript error upon rendering.&amp;nbsp; This could possibly happen if the message contained singles quotes for contractions, quotes, etc.&lt;/p&gt;
&lt;p&gt;So, I quickly set upon adding another method to&amp;nbsp;a growing RegularExpress library class that I am working with.&amp;nbsp; Here is the method:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="overflow: auto; width: 500px; height: 500px"&gt;
&lt;pre&gt;''' &amp;lt;summary&amp;gt;
''' EscapeSingleQuotes - this method allows you to pass a string into it to 
''' update your string with all single quotes escaped to prevent JavaScript errors
''' &amp;lt;/summary&amp;gt;
''' &amp;lt;param name="TextToEscape"&amp;gt;String - the text that you want to parse&amp;lt;/param&amp;gt;
''' &amp;lt;remarks&amp;gt;
''' Use this method to make a string safe for JavaScript routines
''' &amp;lt;/remarks&amp;gt;
Public Shared Function EscapeSingleQuotes(ByVal TextToEscape As String) As String
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;' create a new regex object
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Dim re As New Regex("(\w'|\s'|!'|@'|#'|\$'|%'|\^'|&amp;'|\*'|\('|\)'|\-'|\+'|='|:'|;'|""'|,'|&amp;lt;'|\.'|&amp;gt;'|/'|\?'|\['|\]'|\{'|\}'|'')[^\']")&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;' get a collection of the instances of singles to escape
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Dim reMatches As System.Text.RegularExpressions.MatchCollection = re.Matches(TextToEscape)&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;' loop through the matches and escape the single quotes
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;For i As Integer = 0 To reMatches.Count - 1
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;' update the single quote with a preceding backslash
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;TextToEscape = TextToEscape.Replace(reMatches.Item(i).Value, reMatches.Item(i).Value.Replace("'", "\'"))
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Next&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Return TextToEscape
End Function&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;It is just that easy.&amp;nbsp; Now all I have to do is to write something like this to take advantage of it:&lt;/p&gt;
&lt;pre&gt;Dim strString As String =&amp;nbsp;_&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;quot;This is a 'sample' this one \' is escaped, and this one &amp;quot; &amp;amp;&amp;nbsp;_&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;quot;$' !' -' has different puncuation preceding it, and &amp;quot; &amp;amp; _&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;quot;don't forget double single '' quotes&amp;quot;&lt;br /&gt;strString = EscapeSingleQuotes(strString)&lt;/pre&gt;
&lt;p&gt;Which would return a string like this:&lt;/p&gt;
&lt;pre&gt;This is a \'sample\' this one \' is escaped, and this one &lt;br /&gt;$\' !\' -\' has different puncuation preceding it, and &lt;br /&gt;don\'t forget double single \'\' quotes&lt;/pre&gt;
&lt;p&gt;Notice that it escaped all of the single quotes EXCEPT the single quote that was already escaped.&amp;nbsp; Have fun!&lt;/p&gt;</description></item><item><title>How To: Loop Through Controls and Change the Label of a Checkbox</title><link>http://www.willstrohl.com/Blog/PostId/53/How-To-Loop-Through-Controls-and-Change-the-Label</link><summary>From time to time we need to do something that the .Net framework doesn't immediately expose to us (without some finagling).  In this instance, I wanted to override the attributes that the labels generated by the CheckBoxList webcontrol.  However, I only wanted to modify this one instance of it.</summary><category>ASP.Net</category><pubDate>Thu, 19 Apr 2007 07:00:00 GMT</pubDate><description>&lt;p&gt;From time to time we need to do something that the .Net framework doesn't immediately expose to us (without some finagling).&amp;nbsp; In this instance, I wanted to override the attributes that the labels generated by the CheckBoxList webcontrol.&amp;nbsp; However, I only wanted to modify this one instance of it.&lt;/p&gt;
&lt;p&gt;In doing so, I needed to hook into the creation of the item collection of the CheckBoxList control, but I do not know of an event that we can use to do so.&amp;nbsp; So, I instead ran a loop through the controls collection to find the instances of the CheckBoxList control and make the changes I wanted.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Here is an example:&lt;/p&gt;
&lt;pre&gt;Private Sub ReWriteCheckboxLabels()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim ctl As System.Web.UI.Control&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim ctlCheck As WebControls.CheckBoxList&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp; ' loop through all of the controls in the UpdatePanel&lt;br /&gt;     ' controls collection&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For Each ctl In Me.UpdatePanel1.Controls(0).Controls&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' make sure that the current control is the right kind&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; If ctl.GetType.ToString = &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _&amp;quot;System.Web.UI.WebControls.CheckBoxList&amp;quot; Then&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' yippee! it's a checkbox list - change the type&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ctlCheck = CType(ctl, WebControls.CheckBoxList)&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' only do this if there are items to change&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select Case ctlCheck.Items.Count&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Case Is &amp;gt; 0&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' force the label text to inherit the &lt;br /&gt;                         ' correct class&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Dim item As ListItem&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' loop through the items in the current &lt;br /&gt;                         ' checkbox list&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; For Each item In ctlCheck.Items&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ' wrap the text within the label &lt;br /&gt;                              ' to override it's CSS class&lt;br /&gt;                              item.Text = &amp;quot;&amp;lt;span class=&amp;quot;&amp;quot;&amp;quot; &amp;amp; _&lt;br /&gt;                                   &amp;quot;YOURCSSCLASSNAME&amp;quot;&amp;quot;&amp;gt;&amp;quot; &amp;amp; _&lt;br /&gt;                                   item.Text &amp;amp; &amp;quot;&amp;lt;/span&amp;gt;&amp;quot;&lt;span item.text="" _="" class="&amp;quot;&amp;quot;&amp;quot;"&gt;&lt;br /&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Case Else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'do nothing&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End Select&lt;br /&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next&lt;br /&gt;End Sub&lt;/pre&gt;
&lt;p&gt;In the previous example, I have at least one CheckBoxList control nexted within a MS AJAX UpdatePanel.&amp;nbsp; In order to get to the collection of controls, I need to first reference the controls using the &lt;br /&gt;
Controls collection of the first Controls instance in the UpdatePanel.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;If you are not nesting your controls a similar way, you can simply modify the first FOR EACH loop to be something more like this:&lt;/p&gt;
&lt;pre&gt;For Each ctl In Me.Controls&lt;/pre&gt;
&lt;p&gt;This would loop through all of the controls in the current page or user control.&lt;/p&gt;</description></item><item><title>Dynamically Creating a DataTable for Bindable Times</title><link>http://www.willstrohl.com/Blog/PostId/54/Dynamically-Creating-a-DataTable-for-Bindable-Tim</link><summary>I came across a requirement where I needed to create a DataTable of times for a project.  This table didn't need to take up any space on the database since it would never change.  The times would need to be listed in 30 minute increments for each hour of the day.  This would then get binded mostly by dropdown lists.</summary><category>ASP.Net</category><pubDate>Thu, 19 Apr 2007 07:00:00 GMT</pubDate><description>&lt;p&gt;I came across a requirement where I needed to create a DataTable of times for a project.&amp;nbsp; This table didn't need to take up any space on the database since it would never change.&amp;nbsp; The times would need to be listed in 30 minute increments for each hour of the day.&amp;nbsp; This would then get binded mostly by dropdown lists.&lt;/p&gt;
&lt;p&gt;Since the requirements said that it could (and should) be dynamically generated, I came up with the following methods for a utility class I have which allow me to do this.&lt;/p&gt;
&lt;p&gt;Here is the example:&lt;/p&gt;
&lt;pre&gt;Public ReadOnly Property TimesKeyName as String&lt;br /&gt;     Get&lt;br /&gt;          Return &amp;quot;timeskey&amp;quot;&lt;br /&gt;     End Get&lt;br /&gt;End Property&lt;/pre&gt;
&lt;pre&gt;Public ReadOnly Property TimesKeyValue as String&lt;br /&gt;     Get&lt;br /&gt;          Return &amp;quot;timesvalue&amp;quot;&lt;br /&gt;     End Get&lt;br /&gt;End Property&lt;/pre&gt;
&lt;pre&gt;Public ReadOnly Property TimesAmPm as String&lt;br /&gt;     Get&lt;br /&gt;          Return &amp;quot;timesampm&amp;quot;&lt;br /&gt;     End Get&lt;br /&gt;End Property&lt;/pre&gt;
&lt;pre&gt;Private _TimesTable As DataTable = Nothing&lt;br /&gt;Public Property Times As DataTable&lt;br /&gt;     Get&lt;br /&gt;          If Me._TimesTable Is Nothing Then&lt;br /&gt;               Me._TimesTable = Me.LoadTimesTable(Me._TimesTable)&lt;br /&gt;          End If&lt;br /&gt;          Return Me._TimesTable&lt;br /&gt;     End Get&lt;br /&gt;     Set(ByVal value As DataTable)&lt;br /&gt;          Me._TimesTable = value&lt;br /&gt;     End Set&lt;br /&gt;End Property&lt;/pre&gt;
&lt;pre&gt;Private Function LoadTimesTable(ByVal tblTable As DataTable) As DataTable&lt;br /&gt;     Dim row1, row2 As DataRow&lt;br /&gt;     tblTable = New DataTable(&amp;quot;Times&amp;quot;)&lt;br /&gt;     With tblTable&lt;br /&gt;          .Columns.Add(New DataColumn(Me.TimesKeyName, _&lt;br /&gt;               System.Type.GetType(&amp;quot;System.String&amp;quot;, False)))&lt;br /&gt;          .Columns.Add(New DataColumn(Me.TimesValueName, _&lt;br /&gt;               System.Type.GetType(&amp;quot;System.String&amp;quot;, False)))&lt;br /&gt;          .Columns.Add(New DataColumn(Me.TimesAmPm, _&lt;br /&gt;               System.Type.GetType(&amp;quot;System.String&amp;quot;, False)))&lt;br /&gt;     End With&lt;br /&gt;&lt;br /&gt;     ' create local variables&lt;br /&gt;     Dim intI, intX As Integer&lt;br /&gt;     ' load the sorted list with times&lt;br /&gt;     For intI = 1 To 24&lt;br /&gt;          ' set an initial value&lt;br /&gt;          row1 = tblTable.NewRow&lt;br /&gt;          row2 = tblTable.NewRow&lt;br /&gt;          ' add the time key/value &amp;amp; add the time to the row&lt;br /&gt;          If intI &amp;lt;= 12 Then&lt;br /&gt;               ' morning hours&lt;br /&gt;               row1(0) = intI.ToString &amp;amp; &amp;quot;:00 AM&amp;quot;&lt;br /&gt;               row2(0) = intI.ToString &amp;amp; &amp;quot;:30 AM&amp;quot;&lt;br /&gt;               ' add the 24 hour time (pad with a zero if needed)&lt;br /&gt;               intX = intI&lt;br /&gt;               row1(1) = _&lt;br /&gt;                    Me.MakeSingleDigitHourDouble(intX.ToString) &amp;amp; &amp;quot;00&amp;quot;&lt;br /&gt;               row2(1) = _&lt;br /&gt;                    Me.MakeSingleDigitHourDouble(intX.ToString) &amp;amp; &amp;quot;30&amp;quot;&lt;br /&gt;               ' append the AM/PM values&lt;br /&gt;               row1(2) = &amp;quot;AM&amp;quot;&lt;br /&gt;               row2(2) = &amp;quot;AM&amp;quot;&lt;br /&gt;          Else&lt;br /&gt;               ' afternoon/evening hours&lt;br /&gt;               intX = intI - 12&lt;br /&gt;               row1(0) = intX.ToString &amp;amp; &amp;quot;:00 PM&amp;quot;&lt;br /&gt;               row2(0) = intX.ToString &amp;amp; &amp;quot;:30 PM&amp;quot;&lt;br /&gt;               ' translate 24 hour time&lt;br /&gt;               row1(1) = intI.ToString &amp;amp; &amp;quot;00&amp;quot;&lt;br /&gt;               row2(1) = intI.ToString &amp;amp; &amp;quot;30&amp;quot;&lt;br /&gt;               ' append the AM/PM values&lt;br /&gt;               row1(2) = &amp;quot;PM&amp;quot;&lt;br /&gt;               row2(2) = &amp;quot;PM&amp;quot;&lt;br /&gt;          End If&lt;br /&gt;          ' add the row to the table&lt;br /&gt;          With tblTable.Rows&lt;br /&gt;               .Add(row1)&lt;br /&gt;               .Add(row2)&lt;br /&gt;          End With&lt;br /&gt;     Next&lt;br /&gt;     Return tblTable&lt;br /&gt;End Function&lt;/pre&gt;
&lt;pre&gt;Private Function MakeSingleDigitHourDouble(ByVal _Hour As String) As String&lt;br /&gt;     ' check to see if the variable is already two numbers&lt;br /&gt;     Dim objRegex As New Regex(&amp;quot;^[0-9]{2}?&amp;quot;)&lt;br /&gt;     Dim result As Match = objRegex.Match(_Hour)&lt;br /&gt;     If result.Success Then&lt;br /&gt;          ' if it is two numbers, then return it&lt;br /&gt;          Return _Hour&lt;br /&gt;     Else&lt;br /&gt;          ' make sure it is a number&lt;br /&gt;          objRegex = New Regex(&amp;quot;^[0-9]{1}?&amp;quot;)&lt;br /&gt;          result = objRegex.Match(_Hour)&lt;br /&gt;          If result.Success Then&lt;br /&gt;               ' it is a number&lt;br /&gt;               Return &amp;quot;0&amp;quot; &amp;amp; _Hour&lt;br /&gt;          Else&lt;br /&gt;               ' it is not - throw an error&lt;br /&gt;               ' (that'll teach 'em!)&lt;br /&gt;               Throw New Exception(&amp;quot;The _Hour variable must be a &amp;quot; &amp;amp; _&lt;br /&gt;                    &amp;quot;number (String).&amp;quot;)&lt;br /&gt;          End If&lt;br /&gt;     End If&lt;br /&gt;End Function&lt;/pre&gt;
&lt;p&gt;There wasn't anything fancy done here.&amp;nbsp; I just looped to populate a DataTable with three columns.&amp;nbsp; One each for the key and value pair, and an additional column to aid in sorting and other helper functions elsewhere without having to parse the time string.&lt;/p&gt;
&lt;p&gt;I am sure I will need to streamline this later on, but here is the first draft of this &lt;u&gt;working&lt;/u&gt; and functional code.&lt;/p&gt;</description></item><item><title>.Net Error: The specified path, file name, or both are too long.</title><link>http://www.willstrohl.com/Blog/PostId/52/Net-Error-The-specified-path-file-name-or-both-ar</link><summary>Here is an error that kind of irritates me only because Microsoft should have thought this one through.  However, we find ourselves thinking or saying that more often then we'd like, huh?</summary><category>ASP.Net</category><pubDate>Tue, 17 Apr 2007 05:00:00 GMT</pubDate><description>&lt;p&gt;Here is an error that kind of irritates me only because Microsoft should have thought this one through.&amp;nbsp; However, we find ourselves thinking or saying that more often then we'd like, huh?&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;font color="#ff0000"&gt;The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters.&lt;/font&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;This error doesn't necessarily refer to your URL as most of us would immediately think.&amp;nbsp; It can and often does refer to the physical file path of the application, its providers, or its controls.&amp;nbsp; For instance, on a default installation of Microsoft Visual Web Developer Express Edition (that's a mouhtful, huh?), the default location for web sites is a path similar to below:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;C:\Documents and Settings\[username]\My Documents\Visual Studio 2005\WebSites\[websitename]&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;However, if we choose to instead create and run our web sites from the root of the drive, this error would likely go away:&lt;/p&gt;
&lt;p&gt;&lt;em&gt;C:\Web\[websitename]&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;I hope this helps!&amp;nbsp;&lt;/p&gt;</description></item><item><title>Regular Expression - Validating Time</title><link>http://www.willstrohl.com/Blog/PostId/45/Regular-Expression-Validating-Time</link><summary>I am just an amateur when it comes to regular expression, but I plan on getting a whole lot better at it. There is too much potential there to not want to use it more often. I just came up with a regular expression pattern to validate time format. It has some small checks incorporated for valid times, but it is not 100% inclusive.</summary><category>ASP.Net</category><pubDate>Tue, 10 Apr 2007 05:00:00 GMT</pubDate><description>&lt;P&gt;I am just an amateur when it comes to regular expression, but I plan on getting a whole lot better at it. There is too much potential there to not want to use it more often. I just came up with a regular expression pattern to validate time format. It has some small checks incorporated for valid times, but it is not 100% inclusive. Here is the expression:&lt;/P&gt;
&lt;P&gt;&lt;PRE&gt;^[0-1]?[0-9]{1}:[0-5]{1}[0-9]{1} (AM|PM|am|pm)$&lt;/PRE&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;The preceding pattern will match times such as:&lt;/P&gt;
&lt;P&gt;12:29 PM, 12:29 pm, 2:14 AM, 2:14 am, etc.&lt;/P&gt;
&lt;P&gt;It will not match:&lt;BR&gt;&lt;BR&gt;22:29 PM, 11:69 AM, etc.&lt;/P&gt;
&lt;P&gt;However, the catch here is that it will also match times like:&lt;BR&gt;&lt;BR&gt;19:00 AM, 13:14 pm, etc.&lt;/P&gt;
&lt;P&gt;It may or may not be obvious to you that this not a valid time, but the expression will not find it as obvious. Like I said, I am an amateur here, so let me know if you have a better expression for this.&lt;/P&gt;</description></item><item><title>Regular Expression - Date</title><link>http://www.willstrohl.com/Blog/PostId/46/Regular-Expression-Date</link><summary>I have another one for you! This one will validate a date within the current century. This should be sufficient enough for most current applications.</summary><category>ASP.Net</category><pubDate>Tue, 10 Apr 2007 05:00:00 GMT</pubDate><description>&lt;p&gt;I have another one for you! This one will validate a date within the current century. This should be sufficient enough for most current applications.&lt;/p&gt;
&lt;p&gt;&lt;PRE&gt;^([0-1]?[0-9]{1}/[0-3]?[0-9]{1}/20[0-9]{2})$&lt;/PRE&gt;&lt;/p&gt;
&lt;p&gt;The preceding regular expression will, like the previous posting on time, validate most date options. The weaknesses with this one is that it will allow the days to go up to 39 and does not account for leap year. Also, the months can go up to 19, instead of our commonly accepted 12 month year. :)&lt;/p&gt;
&lt;p&gt;I designed this expression to validate dates from the year 2000 to 2099. I do not plan on this same code being in place in 2099, so I hope this is sufficient enough...&lt;/p&gt;</description></item><item><title>Microsoft AJAX 1.0 - Common Error</title><link>http://www.willstrohl.com/Blog/PostId/44/Microsoft-AJAX-10-Common-Error</link><summary>I began playing with the Microsoft AJAX 1.0 features today with an actual project instead of simple test scenarios similar to the AJAX videos offered on the ASP.Net web site. I am using AJAX controls to make an asynchronous call to my server which in turns calls an external web service and repopulates a textarea control. The first click of the button that submits the call works perfectly. The call goes out, and in just 'sec my SOAP response is shown in the textarea without a hitch. However, this is where a big brick gets thrown through the window!</summary><category>ASP.Net</category><pubDate>Fri, 06 Apr 2007 05:00:00 GMT</pubDate><description>&lt;P&gt;I began playing with the Microsoft AJAX 1.0 features today with an actual project instead of simple test scenarios similar to the AJAX videos offered on the &lt;A href="http://ajax.asp.net/"&gt;ASP.Net&lt;/A&gt; web site. I am using AJAX controls to make an asynchronous call to my server which in turns calls an external web service and repopulates a textarea control. The first click of the button that submits the call works perfectly. The call goes out, and in just 'sec my SOAP response is shown in the textarea without a hitch. However, this is where a big brick gets thrown through the window!&lt;/P&gt;
&lt;P&gt;If you click the button again without refreshing the page or removing the text from the textarea, an AJAX error will be thrown in the form of an alert that states:&lt;BR&gt;
&lt;BLOCKQUOTE style="FONT-STYLE: italic"&gt;Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the request on the server. The status code returned from the server was: 500&lt;/BLOCKQUOTE&gt;&lt;BR&gt;Now this was a perplexing error since us .Net developers have become so accustomed to reading errors that include some details about how and where the error occurred. That information would undoubtedly leads us to the "why" of the error. However, this alert doesn't give us a whole lot to go on to troubleshoot the problem.&lt;BR&gt;&lt;BR&gt;I proceeded to do what nearly all of us do... I &lt;A href="http://www.google.com/search?as_q=&amp;amp;hl=en&amp;amp;newwindow=1&amp;amp;rlz=1B3GGGL_enUS213US213&amp;amp;num=20&amp;amp;btnG=Google+Search&amp;amp;as_epq=The+status+code+returned+from+the+server+was+500&amp;amp;as_oq=&amp;amp;as_eq=&amp;amp;lr=lang_en&amp;amp;as_ft=i&amp;amp;as_filetype=&amp;amp;as_qdr=y&amp;amp;as_nlo=&amp;amp;as_nhi=&amp;amp;as_occt=any&amp;amp;as_dt=i&amp;amp;as_sitesearch=&amp;amp;as_rights=&amp;amp;safe=off" target=_blank&gt;Googled the error&lt;/A&gt;. I had a handful of appropriate results show up, but most of them were outdated and none of them had a single clear answer as to how or why this happened. I still do not know the how of my error, but I was able to determine the the why with a few hints from a couple of &lt;A href="http://www.google.com/search?as_q=&amp;amp;hl=en&amp;amp;newwindow=1&amp;amp;rlz=1B3GGGL_enUS213US213&amp;amp;num=20&amp;amp;btnG=Google+Search&amp;amp;as_epq=The+status+code+returned+from+the+server+was+500&amp;amp;as_oq=&amp;amp;as_eq=&amp;amp;lr=lang_en&amp;amp;as_ft=i&amp;amp;as_filetype=&amp;amp;as_qdr=y&amp;amp;as_nlo=&amp;amp;as_nhi=&amp;amp;as_occt=any&amp;amp;as_dt=i&amp;amp;as_sitesearch=&amp;amp;as_rights=&amp;amp;safe=off" target=_blank&gt;the search results&lt;/A&gt;.
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;After the first request was sent out as a result of clicking the button, the textarea was loaded with an XML web service response. This obviously consisted of HTML characters like the "greater than" and "less than" symbols. If I attempted to send a subsequent request by clicking the button a second time WITHOUT reloading the page, the error would occur because of the HTML in the textarea. Since the textarea is located within an UpdatePanel, the text within the textarea, I am assuming the error occurs because the HTML could contain harmful content.&lt;/P&gt;
&lt;P&gt;Now, I am sure that there is a much more elegant and event easier fix to this, but I have not thoroughly investigated this yet. The quick fix I found for this was to inject a JavaScript snippet into the OnClick event of the button. This would look something like the following:&lt;/P&gt;
&lt;P&gt;&lt;PRE&gt;Dim strScript As String = "document.getElementById('" &amp;amp; _&lt;BR&gt;     Me.txtResponse.ClientID &amp;amp; "').value = '';"&lt;BR&gt;Me.cmdSubmit.Attributes.Add("onclick", strScript)&lt;/PRE&gt;
&lt;P&gt;&lt;/P&gt;
&lt;P&gt;This clears out any text in the textarea before the request is actually sent from the browser to the web service. Now, I said before that this is probably not the most efficient means to do this. I only did this because it is for a test application that is testing my web service. I wouldn't do this for a production application. But this workaround may do something for you in a situation like this.&lt;/P&gt;
&lt;P&gt;If you have the actual fix or want to tell me how horrible of a coder I am, leave some comments. :) Until next time...&lt;/P&gt;</description></item><item><title>Simple, Quick AJAX Thoughts</title><link>http://www.willstrohl.com/Blog/PostId/34/Simple-Quick-AJAX-Thoughts</link><summary>I have been using AJAX for some time now, though I do not code AJAX as you might think. I have been using the AJAX tools provided from Telerik to do so. Their tools have been straight-forward and easy to use much like any other web control. However, right now I am evaluating whether I should continue to use these tools with my most current project or move on to using Microsoft's AJAX tools. I have been looking through the "How To" videos at the following URL and I must say that this is a very interesting take on providing AJAX tools to developers. However, I believe that there is still too much for the developer to do upfront to always use these tools for your .Net AJAX needs.</summary><category>ASP.Net</category><pubDate>Sun, 04 Mar 2007 06:00:00 GMT</pubDate><description>&lt;P&gt;I have been using AJAX for some time now, though I do not code AJAX as you might think. I have been using the AJAX tools provided from Telerik to do so. Their tools have been straight-forward and easy to use much like any other web control. However, right now I am evaluating whether I should continue to use these tools with my most current project or move on to using Microsoft's AJAX tools. I have been looking through the "How To" videos at the following URL and I must say that this is a very interesting take on providing AJAX tools to developers. However, I believe that there is still too much for the developer to do upfront to always use these tools for your .Net AJAX needs.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.asp.net/learn/videos/default.aspx?tabid=63"&gt;http://www.asp.net/learn/videos/default.aspx?tabid=63&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;As you can see from the following link to the Telerik web site, they are embracing the AJAX tools offered by Microsoft, but those tools do not completely replace the ease of use offered by the Telerik suite of AJAX tools.&lt;/P&gt;
&lt;P&gt;&lt;A href="http://www.telerik.com/products/ajax/overview.aspx"&gt;http://www.telerik.com/products/ajax/overview.aspx&lt;/A&gt;&lt;/P&gt;</description></item><item><title>Migrating Development Software from .Net 1.0 to 2.0</title><link>http://www.willstrohl.com/Blog/PostId/19/Migrating-Development-Software-from-Net-10-to-20</link><summary>ARGH!!! I have been having the worst time trying to install Microsoft SQL Server 2005 on my development machine at home. Since I had already been burned in the BETA initiation when I installed at work, I already knew to uninstall any .Net 2.0 development software before I began installation (BETA or not).</summary><category>ASP.Net</category><pubDate>Wed, 05 Jul 2006 05:00:00 GMT</pubDate><description>&lt;p&gt;ARGH!!! I have been having the worst time trying to install Microsoft SQL Server 2005 on my development machine at home. Since I had already been burned in the BETA initiation when I installed at work, I already knew to uninstall any .Net 2.0 development software before I began installation (BETA or not).&lt;/p&gt;
&lt;p&gt;This time I was met with a HUGE surprise though. Although I had uninstalled everything that &lt;A href="http://msdn.microsoft.com/vstudio/express/support/uninstall/" target=_blank&gt;Microsoft's web site told us all to&lt;/A&gt;, the install of SQL Server 2005 kept telling me otherwise. Even their BETA uninstall tool was not functioning. The newest version would not complete the uninstall due to an XML error, and the one I downloaded with the BETA software many moons ago would just not complete the uninstall, thinking that I was not logged on as an Administrator. Microsoft really screwed us on this one! There should have been a &lt;SPAN style="FONT-WEIGHT: bold"&gt;much&lt;/SPAN&gt; easier upgrade path from the BETA versions to the release versions of Visual Studio 2005 and SQL Server 2005.&lt;/p&gt;
&lt;p&gt;I even went through the hassle of uninstalling my latest MDAC as one forum suggested. Ugh!&lt;/p&gt;
&lt;p&gt;After much Googling, I finally found the answer here:&lt;/p&gt;
&lt;p&gt;&lt;A href="http://support.microsoft.com/default.aspx?scid=kb;en-us;290301" target=_blank&gt;http://support.microsoft.com/default.aspx?scid=kb;en-us;290301&lt;/A&gt;&lt;/p&gt;
&lt;p&gt;For some reason, Windows sometimes keeps Windows Installation information intact even when you uninstall software. I am using Windows 2000, so I am not sure if this would also be the case with XP. My development machine at work is XP and had a similar problem, but I did not need this tool to sort it out. The link above leads you to the tool that fixes the install information problem. However, be careful with it. It can mess you up if you are not paying attention.&lt;/p&gt;
&lt;p&gt;This is a valuable piece of trial and error that I hope gets you out of hot water! :) Enjoy!&lt;/p&gt;</description></item><item><title>How To: Use JavaScript to Set the Page Position</title><link>http://www.willstrohl.com/Blog/PostId/10/How-To-Use-JavaScript-to-Set-the-Page-Position</link><summary>First of all, sorry that I haven't posted in a while. I know all of my readers (namely - ME) have missed me deeply. I hope to find more time to release thoughts and whatnot soon.

If you are a web developer who deals with some kind of server-side programming, I am sure that at some point or another you will find this post useful.</summary><category>ASP.Net</category><pubDate>Wed, 03 Aug 2005 05:00:00 GMT</pubDate><description>&lt;P&gt;First of all, sorry that I haven't posted in a while. I know all of my readers (namely - ME) have missed me deeply. I hope to find more time to release thoughts and whatnot soon.&lt;/P&gt;
&lt;P&gt;If you are a web developer who deals with some kind of server-side programming, I am sure that at some point or another you will find this post useful.&lt;/P&gt;
&lt;P&gt;Normally, when you have a LONG page of content (which we never do, do we?) a seemingly good solution to getting your visitor to a specific section of it would be to have a link to an anchor somewhere on the page. For example:&lt;/P&gt;
&lt;P&gt;&lt;PRE&gt;&amp;lt;a href="#content"&amp;gt;Click here to go to the content&amp;lt;/a&amp;gt;&lt;/PRE&gt;&lt;/P&gt;
&lt;P&gt;Then, somewhere down on the page you would have something like this:&lt;/P&gt;
&lt;P&gt;&lt;PRE&gt;&amp;lt;a id="content" name="content"&amp;gt;&amp;lt;/a&amp;gt;&amp;lt;div&amp;gt;My content is here and you have found it!&amp;lt;/div&amp;gt;&lt;/PRE&gt;&lt;/P&gt;
&lt;P&gt;If you are a developer using ASP.Net, you probably already know where I am going. The rest of you may as well, but in .Net you have the use of Server Controls. Effectively, server controls give you the power to send requests back to the web server without having to worry about most of the details involved with doing so.&lt;/P&gt;
&lt;P&gt;In my most recent example, I have a Call Logging form for an online Trouble Ticket System where a user enters in some information about their caller and the problem that is being experienced, then chooses whether to issue a ticket. Well, it would be much easier to determine whether a ticket is necessary or not if they could see if another technician has issued one.&lt;/P&gt;
&lt;P&gt;What I have done with this form is made it to when a certain amount of information is given, two DataGrids (tables) containing a listing of previous calls are displayed. One shows previous calls from the same person, and the other shows calls from others which may relate to the same issue. In order to not adversely affect the form itself and to prevent excess windows and postbacks, I have placed these at the bottom of the same page as the call logging form.&lt;/P&gt;
&lt;P&gt;Now, hopefully I have not lost you and you can picture a rather large web form with two scrollable tables at the bottom of the page. If the tables just magically appear at the bottom of the page, you wouldn't be able to see them right away. The user would first need to know that they are there, and then scroll down to them. As you can imagine, this is not a very user-friendly approach for the user.&lt;/P&gt;
&lt;P&gt;To make this effective, the page needs to scroll down to the two DataGrids so that they are presented to the user immediately. This was not an easy task to even plan, but I have found a way for you to perform this task rather easily.&lt;/P&gt;
&lt;P&gt;First, you need to get the source of a JavaScript function which calculates coordinates on a web page from Matt Kruse. (Make sure you give him a donation too.) Here is the link:&lt;/P&gt;
&lt;P align=center&gt;&lt;A href="http://www.mattkruse.com/javascript/anchorposition/"&gt;http://www.mattkruse.com/javascript/anchorposition/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Add this source to your web page the same way that you normally would.&lt;/P&gt;
&lt;P&gt;Now, from here on out you will need to customize my example to fit your needs. I am just going to feed you the simplist way I can to show you the functionality.&lt;/P&gt;
&lt;P&gt;Find the section on your page that you want to anchor for a postback event to focus on and add an anchor like so:&lt;/P&gt;
&lt;P&gt;&lt;PRE&gt;&amp;lt;a id="ancRelated" name="ancRelated"&amp;gt;&amp;lt;/a&amp;gt;&lt;/PRE&gt;&lt;/P&gt;
&lt;P&gt;Make sure that you have included the ID and Name attributes, and that they are the same name. Also, it is necessary to have a space between the opening and closing anchor tags for browser compatibility.&lt;/P&gt;
&lt;P&gt;Now, add a JavaScript function like the one below:&lt;/P&gt;
&lt;P&gt;&lt;PRE&gt;&amp;lt;script language="javascript" type="text/javascript"&amp;gt;&lt;BR&gt;
function ScrollToRelated(){&lt;BR&gt;
// ancRelated is the anchor name&lt;BR&gt;
var pos;&lt;BR&gt;
pos = getAnchorPosition('ancRelated');&lt;BR&gt;
self.scrollTo(pos.x, pos.y);&lt;BR&gt;
}&lt;BR&gt;
&amp;lt;/script&amp;gt;&lt;/PRE&gt;&lt;/P&gt;
&lt;P&gt;In my example, a PostBack causes the need to call this function, so here is an example of calling the JavaScript function from a .Net event:&lt;/P&gt;
&lt;P&gt;&lt;pre&gt;Dim strScript As String = "&amp;lt;script language=""javascript"" type=""text/javascript""&amp;gt;" &amp;amp; _&lt;BR&gt;
"ScrollToRelated();" &amp;amp; _&lt;BR&gt;
"&amp;lt;/script&amp;gt;"&lt;BR&gt;
If Not Page.IsStartupScriptRegistered("AnchorFocus") Then&lt;BR&gt;
Page.RegisterStartupScript("AnchorFocus", strScript)&lt;BR&gt;
End If&lt;/pre&gt;&lt;/P&gt;
&lt;P&gt;This will insert the JavaScript just before the closing FORM tag in your HTML when it is compiled and sent to the web browser. Essentially, this mimics the action of adding another JavaScript function and calling it from the onload attribute in the BODY tag.&lt;/P&gt;
&lt;P&gt;Of course if you have a more complicated example, you would have to make this one more flexibile to accept a parameter or more for multiple anchors, and whatever else you are trying to do - but this should get you started!&lt;/P&gt;</description></item><item><title>How To: Display All Server Variables (ASP.Net)</title><link>http://www.willstrohl.com/Blog/PostId/9/How-To-Display-All-Server-Variables-ASPNet</link><summary>There are many instances where you might want to either write all of the items in the Server Variables collection, or at least be able to step through them. For instance, you may want to know use this information as part of the text returned from a feedback form to let you know what the user's settings and referring URL were. Or, perhaps you want to know this information as part of an error handling schema you have developed.</summary><category>ASP.Net</category><pubDate>Tue, 28 Jun 2005 07:00:00 GMT</pubDate><description>&lt;SPAN class=post_text&gt;There are many instances where you might want to either write all of the items in the Server Variables collection, or at least be able to step through them. For instance, you may want to know use this information as part of the text returned from a feedback form to let you know what the user's settings and referring URL were. Or, perhaps you want to know this information as part of an error handling schema you have developed.&lt;BR&gt;&lt;BR&gt;A simple example of gathering a single piece of information from the Server Variables collection:&lt;BR&gt;&lt;BR&gt;&lt;CODE&gt;Dim strIpNumber As String = Request.ServerVariables("REMOTE_ADDR")&lt;BR&gt;Response.Write(strIpNumber)&lt;BR&gt;' this should return an IP number like 123.123.123.123&lt;/CODE&gt;&lt;BR&gt;&lt;BR&gt;Here is an example of how you can loop through and display or collect all of the available Server Variables.&lt;BR&gt;&lt;BR&gt;&lt;CODE&gt;' prepare variables&lt;/CODE&gt;&lt;BR&gt;&lt;CODE&gt;Dim strText As String = ""&lt;/CODE&gt;&lt;BR&gt;&lt;CODE&gt;Dim nvcSV As System.Collections.Specialized.NameValueCollection = Request.ServerVariables&lt;BR&gt;Dim arrKeys() As String = nvcSV.AllKeys&lt;BR&gt;Dim iCnt As Integer = 0 &lt;/CODE&gt;&lt;BR&gt;&lt;CODE&gt;' loop through the collection and write the results&lt;BR&gt;For iCnt = 0 To arrKeys.Length - 1&lt;BR&gt;strString &amp;amp;= UCase(arrKeys(iCnt)) &amp;amp; " - " &amp;amp; nvcSV.Get(iCnt).ToString &amp;amp; vbCrLf&lt;BR&gt;Next&lt;/CODE&gt;&lt;BR&gt;&lt;BR&gt;You should be able to look at output similar to this:&lt;BR&gt;&lt;BR&gt;&lt;PRE&gt;ALL_RAW - (a summary of all of the most commonly used variables)&lt;BR&gt;APPL_MD_PATH - /LM/W3SVC/3/Root/&lt;BR&gt;APPL_PHYSICAL_PATH - (file system path where the application resides)&lt;BR&gt;AUTH_TYPE -&lt;BR&gt;AUTH_USER -&lt;BR&gt;AUTH_PASSWORD -&lt;BR&gt;LOGON_USER -&lt;BR&gt;REMOTE_USER -&lt;BR&gt;CERT_COOKIE -&lt;BR&gt;CERT_FLAGS -&lt;BR&gt;CERT_ISSUER -&lt;BR&gt;CERT_KEYSIZE -&lt;BR&gt;CERT_SECRETKEYSIZE -&lt;BR&gt;CERT_SERIALNUMBER -&lt;BR&gt;CERT_SERVER_ISSUER -&lt;BR&gt;CERT_SERVER_SUBJECT -&lt;BR&gt;CERT_SUBJECT -&lt;BR&gt;CONTENT_LENGTH - (size of page or document)&lt;BR&gt;CONTENT_TYPE -&lt;BR&gt;GATEWAY_INTERFACE - CGI/1.1&lt;BR&gt;HTTPS - off&lt;BR&gt;HTTPS_KEYSIZE -&lt;BR&gt;HTTPS_SECRETKEYSIZE -&lt;BR&gt;HTTPS_SERVER_ISSUER -&lt;BR&gt;HTTPS_SERVER_SUBJECT -&lt;BR&gt;INSTANCE_ID - 3&lt;BR&gt;INSTANCE_META_PATH - /LM/W3SVC/3&lt;BR&gt;LOCAL_ADDR - (internal IP address)&lt;BR&gt;PATH_INFO - (path of url)&lt;BR&gt;PATH_TRANSLATED - (local file system path of URL)&lt;BR&gt;QUERY_STRING - (querystring collection)&lt;BR&gt;REMOTE_ADDR - (normally the IP number)&lt;BR&gt;REMOTE_HOST - (normally the IP number)&lt;BR&gt;REMOTE_PORT -&lt;BR&gt;REQUEST_METHOD - (normall GET or POST)&lt;BR&gt;SCRIPT_NAME - (web path of url)&lt;BR&gt;SERVER_NAME - (DNS-qualified name of host server)&lt;BR&gt;SERVER_PORT - (HTTP port used)&lt;BR&gt;SERVER_PORT_SECURE - 0&lt;BR&gt;SERVER_PROTOCOL - HTTP/1.1&lt;BR&gt;SERVER_SOFTWARE - (HTTP Server type)&lt;BR&gt;URL - (the url used)&lt;BR&gt;HTTP_CONNECTION - Keep-Alive&lt;BR&gt;HTTP_ACCEPT - (collection of accepted file types)&lt;BR&gt;HTTP_ACCEPT_ENCODING - gzip, deflate&lt;BR&gt;HTTP_ACCEPT_LANGUAGE - en-us&lt;BR&gt;HTTP_COOKIE - (cookie collection)&lt;BR&gt;HTTP_HOST - (DNS-qualified name of host server)&lt;BR&gt;HTTP_REFERER - (previous url)&lt;BR&gt;HTTP_USER_AGENT - (browser used)&lt;/PRE&gt;&lt;BR&gt;&lt;BR&gt;Are you interested in seeing an example of ASP.Net using VB.Net? Just let me know...&lt;/SPAN&gt;</description></item></channel></rss>