<feed xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US">
    <title>Wayne Wilkerson</title>
    <link rel="self" type="application/xml" href="http://geekswithblogs.net/RockStarCoder/Atom.aspx" />
    <subtitle type="html"> .Net, SQL Server and other RockStar stuff</subtitle>
    <id>http://geekswithblogs.net/RockStarCoder/Default.aspx</id>
    <author>
        <name>RockStarCoder</name>
        <uri>http://geekswithblogs.net/RockStarCoder/Default.aspx</uri>
    </author>
    <generator uri="http://subtextproject.com" version="Subtext Version 0.0.0.0">Subtext</generator>
    <updated>2009-11-19T13:26:22Z</updated>
    <entry>
        <title>Locating your MediaElement Video Source File in a Silverlight 3 Control</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/RockStarCoder/archive/2009/11/19/locating-your-mediaelement-video-source-file-in-a-silverlight-3.aspx" />
        <id>http://geekswithblogs.net/RockStarCoder/archive/2009/11/19/locating-your-mediaelement-video-source-file-in-a-silverlight-3.aspx</id>
        <published>2009-11-19T13:24:37-05:00:00</published>
        <updated>2009-11-19T13:26:22Z</updated>
        <content type="html">&lt;p&gt;In this Demo I will show 3 ways to have your web page locate your MediaElement’s video file.&lt;/p&gt;
&lt;p&gt;I have created a Silverlight 3 application and let it automatically create a web site to host the control.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image002_2.jpg"&gt;&lt;img height="374" border="0" width="275" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image002_thumb.jpg" alt="clip_image002" title="clip_image002" style="border-width: 0px; display: inline;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Drag a &amp;lt;MediaElement&amp;gt; onto the UserControl and set its source file attribute.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image004_2.jpg"&gt;&lt;img border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image004_thumb.jpg" alt="clip_image004" title="clip_image004" style="border-width: 0px; display: inline; width: 540px; height: 170px;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Drag the video file using window explorer and drop it in the root of my Silverlight’s UserControl project.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image006_2.jpg"&gt;&lt;img height="406" border="0" width="431" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image006_thumb.jpg" alt="clip_image006" title="clip_image006" style="border-width: 0px; display: inline;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Note the size of this file is about 25mb.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image008_2.jpg"&gt;&lt;img height="39" border="0" width="642" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image008_thumb.jpg" alt="clip_image008" title="clip_image008" style="border-width: 0px; display: inline;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;I will demo 3 different methods for setting the location so that the web page can find it.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;Method 1&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Highlight the video and set its “Build Action” to “Content”&lt;/p&gt;
&lt;p&gt;Your properties will look like below:&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image010_2.jpg"&gt;&lt;img height="209" border="0" width="546" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image010_thumb.jpg" alt="clip_image010" title="clip_image010" style="border-width: 0px; display: inline;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Change the source attribute to have a forward slash before the video name.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image012_2.jpg"&gt;&lt;img height="76" border="0" width="642" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image012_thumb.jpg" alt="clip_image012" title="clip_image012" style="border-width: 0px; display: inline;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Build the solution.&lt;/p&gt;
&lt;p&gt;Test using the test aspx page (TestMediaTestPage.aspx) in your web project and the video should work fine.&lt;/p&gt;
&lt;p&gt;Check the size of your xap in the ClientBin folder. Notice that it &lt;u&gt;includes&lt;/u&gt; the video file.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image014_2.jpg"&gt;&lt;img height="39" border="0" width="642" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image014_thumb.jpg" alt="clip_image014" title="clip_image014" style="border-width: 0px; display: inline;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;Method 2&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Again from a fresh Silverlight solution containing the 2 projects, drag the video to the root of the Silverlight project.&lt;/p&gt;
&lt;p&gt;Highlight the video and set its “Build Action” to “Resource”.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Add a &amp;lt;MediaElement&amp;gt; onto the UserControl and set its source file attribute.&lt;/p&gt;
&lt;p&gt;In this case a slash is not used in front of the file name in the MediaElement&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image016_2.jpg"&gt;&lt;img height="73" border="0" width="642" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image016_thumb.jpg" alt="clip_image016" title="clip_image016" style="border-width: 0px; display: inline;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Build the solution.&lt;/p&gt;
&lt;p&gt;Once again check the size of your xap in the ClientBin folder. Notice that it &lt;u&gt;includes&lt;/u&gt; the video file.&lt;/p&gt;
&lt;p&gt;Test using the test aspx page (TestMediaTestPage.aspx) in your web project and the video should work fine.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;u&gt;Method 3&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Again from a fresh Silverlight solution containing the 2 projects, drag the video to the root of the Silverlight project.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Highlight the video and verify its “Build Action” is set to “None”.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Add a &amp;lt;MediaElement&amp;gt; onto the UserControl and set its source file attribute.&lt;/p&gt;
&lt;p&gt;It does not matter if a slash is in front of the file name or not in the MediaElement&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Build the solution and using windows explorer check the size of the xap file in the ClientBin.&lt;/p&gt;
&lt;p&gt;Notice that it does not include the video file.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image018_2.jpg"&gt;&lt;img height="29" border="0" width="642" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image018_thumb.jpg" alt="clip_image018" title="clip_image018" style="border-width: 0px; display: inline;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Using windows explorer, drag the video file into the ClientBin folder.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image020_2.jpg"&gt;&lt;img height="388" border="0" width="281" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/LocatingyourMediaElementVideoSourceFilei_B4D4/clip_image020_thumb.jpg" alt="clip_image020" title="clip_image020" style="border-width: 0px; display: inline;" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Test using the test aspx page (TestMediaTestPage.aspx) in your web project and the video should work fine.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://silverlight.services.live.com/110365/bigweb/video.wmv"&gt;Here&lt;/a&gt; is a video recap.&lt;/p&gt;&lt;img src="http://geekswithblogs.net/RockStarCoder/aggbug/136415.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/RockStarCoder/comments/136415.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/RockStarCoder/comments/commentRss/136415.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/RockStarCoder/services/trackbacks/136415.aspx</trackback:ping>
    </entry>
    <entry>
        <title>Hiding Secrets in a Web.Config Section</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/RockStarCoder/archive/2009/11/12/hiding-secrets-in-a-web.config-section.aspx" />
        <id>http://geekswithblogs.net/RockStarCoder/archive/2009/11/12/hiding-secrets-in-a-web.config-section.aspx</id>
        <published>2009-11-12T12:43:44-05:00:00</published>
        <updated>2009-11-12T19:53:22Z</updated>
        <content type="html">&lt;p&gt;Sometimes while developing websites on your dev machine you may want to encrypt sections of your web.config to hide user ids, passwords or other secret type stuff.&lt;/p&gt;
&lt;p&gt;To do this by using a particular directory path, as in a file system hosted website, you can use the ASPNET_REGIIS utility with the –pef switch. If you are using IIS to host your site rather than a website, you can use the ASPNET_REGIIS utility with the –pe switch and a –app switch to point to the virtual directory. Either of these two techniques can be used to encrypt using the RSAProtectedConfigurationProvider and the machine key.&lt;/p&gt;
&lt;p&gt;In this example I have a website hosted in the file system and will use the –pef switch. My website has an &amp;lt;appSettings&amp;gt; section that contains secrets. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image002_2.jpg" rel="lightbox"&gt;&lt;img height="185" border="0" width="644" style="border: 0px none ; display: inline;" title="clip_image002" alt="clip_image002" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image002_thumb.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;To encrypt this section first open a .Net command prompt.&lt;/p&gt;
&lt;p&gt;Execute the ASPNET_REGIIS command using the –pef switch followed by the section name (case sensitive) and the directory path as shown below.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image004_2.jpg" rel="lightbox"&gt;&lt;img border="0" style="border: 0px none ; display: inline; width: 614px; height: 40px;" title="clip_image004" alt="clip_image004" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image004_thumb.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;After you hit enter and you will receive a success message:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image006_2.jpg" rel="lightbox"&gt;&lt;img height="39" border="0" width="377" style="border: 0px none ; display: inline;" title="clip_image006" alt="clip_image006" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image006_thumb.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Returning to the IDE, if you left your web.config displayed, you will be prompted to reload the file.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image008_2.jpg" rel="lightbox"&gt;&lt;img height="133" border="0" width="401" style="border: 0px none ; display: inline;" title="clip_image008" alt="clip_image008" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image008_thumb.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Click “Yes” to view the web.config again.&lt;/p&gt;
&lt;p&gt;Notice that the &amp;lt;appSettings&amp;gt; has changed.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image010_2.jpg" rel="lightbox"&gt;&lt;img border="0" style="border: 0px none ; display: inline; width: 550px; height: 277px;" title="clip_image010" alt="clip_image010" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image010_thumb.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You will see some squiggles concerning invalid child elements. To clear them modify the configuration element by adding a namespace.&lt;/p&gt;
&lt;p&gt;xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0&lt;/p&gt;
&lt;p&gt;Below is an example.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image012_2.jpg" rel="lightbox"&gt;&lt;img height="272" border="0" width="642" style="border: 0px none ; display: inline;" title="clip_image012" alt="clip_image012" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image012_thumb.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;The retrieval of the encrypted values is done automatically. In the button click handler shown below, I retrieve the unencrypted value no different than when unencrypted.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image014_2.jpg" rel="lightbox"&gt;&lt;img height="83" border="0" width="516" style="border: 0px none ; display: inline;" title="clip_image014" alt="clip_image014" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image014_thumb.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image016_2.jpg" rel="lightbox"&gt;&lt;img height="124" border="0" width="222" style="border: 0px none ; display: inline;" title="clip_image016" alt="clip_image016" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image016_thumb.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;To decrypt the web.config file, use the ASPNET_REGIIS command again from a .Net command prompt. The difference is you replace the –pef switch with –pdf switch to decrypt the section.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image018_2.jpg" rel="lightbox"&gt;&lt;img height="36" border="0" width="644" style="border: 0px none ; display: inline;" title="clip_image018" alt="clip_image018" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HidingSecretsinaWeb.ConfigSection_11483/clip_image018_thumb.jpg" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;This command will return your web.config section to its unencrypted format.&lt;/p&gt;
&lt;p&gt;Again, if you are not using a website but IIS, you may want to use the ASPNET_REGIIS utility with the –pe switch.&lt;/p&gt;
&lt;p&gt;Also the machine key may need permissions granted depending under which identity the site is running.&lt;strong&gt; &lt;/strong&gt;It should be located at \Documents and Settings\All Users\Application Data\Microsoft\Crypto\RSA\MachineKeys.&lt;/p&gt;
&lt;p&gt;(BTW Ssuper was either a typo or stands for Super, super. Take your pick) &lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/C%23" rel="tag"&gt;C#&lt;/a&gt;,&lt;a href="http://technorati.com/tags/.NET" rel="tag"&gt;.NET&lt;/a&gt;,&lt;a href="http://technorati.com/tags/ASP.NET" rel="tag"&gt;ASP.NET&lt;/a&gt;&lt;/p&gt;&lt;img src="http://geekswithblogs.net/RockStarCoder/aggbug/136255.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/RockStarCoder/comments/136255.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/RockStarCoder/comments/commentRss/136255.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/RockStarCoder/services/trackbacks/136255.aspx</trackback:ping>
    </entry>
    <entry>
        <title>Binding an ASP.NET GridView to a typed dataset</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/RockStarCoder/archive/2009/11/11/binding-an-asp.net-gridview-to-a-typed-dataset.aspx" />
        <id>http://geekswithblogs.net/RockStarCoder/archive/2009/11/11/binding-an-asp.net-gridview-to-a-typed-dataset.aspx</id>
        <published>2009-11-11T03:16:00-05:00:00</published>
        <updated>2009-11-10T15:53:00Z</updated>
        <content type="html">&lt;p&gt;Often we have typed datasets coming back from component methods that we want to bind to a GridView at runtime. There are multiple ways to do this. The first technique is without using an ObjectDataSource, the second one is with an ObjectDataSource. Although with either technique its not to difficult to do the bind, formatting the gridview can be a challenge. &lt;/p&gt;
&lt;p&gt;I have a small app for a library that keeps track of a library’s membership, books checked out, etc. I have  a business component that has a method which returns information about a member and another method that returns the books currently checked out by a member. This is returned in a typed dataset&lt;/p&gt;
&lt;p&gt;My sample form looks like this.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_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="image" border="0" alt="image" width="551" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Technique 1: Without an ObjectDataSource&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The user of the page can enter a member number in the textbox and click the button. In the button click event handler the binding and formatting takes place.&lt;/p&gt;
&lt;div style="BORDER-BOTTOM: silver 1px solid; TEXT-ALIGN: left; BORDER-LEFT: silver 1px solid; PADDING-BOTTOM: 4px; LINE-HEIGHT: 12pt; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 20px 0px 10px; PADDING-LEFT: 4px; WIDTH: 100%; PADDING-RIGHT: 4px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; HEIGHT: 400px; MAX-HEIGHT: 400px; FONT-SIZE: 8pt; OVERFLOW: auto; BORDER-TOP: silver 1px solid; CURSOR: text; BORDER-RIGHT: silver 1px solid; PADDING-TOP: 4px" id="codeSnippetWrapper"&gt;
&lt;div style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px" id="codeSnippet"&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;protected&lt;/span&gt; &lt;span style="COLOR: rgb(0,0,255)"&gt;void&lt;/span&gt; Button1_Click(&lt;span style="COLOR: rgb(0,0,255)"&gt;object&lt;/span&gt; sender, EventArgs e)&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;//get a instance of business layer class&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        JL.LibraryBusiness.BusinessLayer bl = &lt;span style="COLOR: rgb(0,0,255)"&gt;new&lt;/span&gt; JL.LibraryBusiness.BusinessLayer();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;//get page data (non grid) by calling method&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        JL.LibraryEntities.Member mymember= bl.GetMember(&lt;span style="COLOR: rgb(0,0,255)"&gt;short&lt;/span&gt;.Parse(TextBox1.Text));&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        TextBox2.Text = mymember.LastName;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;//get grid data by calling method and returning typed dataset&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        JL.LibraryEntities.ItemsDataSet myitems= bl.GetMemberItemsOnLoan(&lt;span style="COLOR: rgb(0,0,255)"&gt;short&lt;/span&gt;.Parse(TextBox1.Text));&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        GridView1.Columns.Clear();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;// set the datsource of the grid&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        GridView1.DataSource = myitems;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;// sets some props of the grid&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        GridView1.Attributes.Add(&lt;span style="COLOR: rgb(0,96,128)"&gt;"style"&lt;/span&gt;, &lt;span style="COLOR: rgb(0,96,128)"&gt;"table-layout:fixed"&lt;/span&gt;);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;//we will add columns for more control - so dont generate them &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        GridView1.AutoGenerateColumns = &lt;span style="COLOR: rgb(0,0,255)"&gt;false&lt;/span&gt;;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;// add a select button&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        GridView1.AutoGenerateSelectButton=&lt;span style="COLOR: rgb(0,0,255)"&gt;true&lt;/span&gt;;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;//ISBNColumn&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        BoundField isbn = &lt;span style="COLOR: rgb(0,0,255)"&gt;new&lt;/span&gt; BoundField();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        isbn.DataField = myitems.Items.ISBNColumn.ColumnName;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        isbn.HeaderText = &lt;span style="COLOR: rgb(0,96,128)"&gt;"ISBN"&lt;/span&gt;;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        isbn.ItemStyle.HorizontalAlign = HorizontalAlign.Center;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        GridView1.Columns.Add(isbn);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;//CopyNumberColumn&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        BoundField copyno = &lt;span style="COLOR: rgb(0,0,255)"&gt;new&lt;/span&gt; BoundField();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        copyno.DataField = myitems.Items.CopyNumberColumn.ColumnName;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        copyno.HeaderText = &lt;span style="COLOR: rgb(0,96,128)"&gt;"Copy Number"&lt;/span&gt;;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        copyno.ItemStyle.HorizontalAlign = HorizontalAlign.Center;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        GridView1.Columns.Add(copyno);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;//TitleColumn&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        BoundField title = &lt;span style="COLOR: rgb(0,0,255)"&gt;new&lt;/span&gt; BoundField();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        title.DataField = myitems.Items.TitleColumn.ColumnName;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        title.HeaderText = &lt;span style="COLOR: rgb(0,96,128)"&gt;"Title"&lt;/span&gt;;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        GridView1.Columns.Add(title);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;//CheckoutDateColumn&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        BoundField outdate = &lt;span style="COLOR: rgb(0,0,255)"&gt;new&lt;/span&gt; BoundField();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        outdate.DataField = myitems.Items.CheckoutDateColumn.ColumnName;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        outdate.HeaderText = &lt;span style="COLOR: rgb(0,96,128)"&gt;"Out Date"&lt;/span&gt;;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        outdate.DataFormatString = &lt;span style="COLOR: rgb(0,96,128)"&gt;"{0:MMM-dd-yyyy}"&lt;/span&gt;; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        GridView1.Columns.Add(outdate);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;//DueDateColumn&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        BoundField duedate = &lt;span style="COLOR: rgb(0,0,255)"&gt;new&lt;/span&gt; BoundField();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        duedate.DataField = myitems.Items.DueDateColumn.ColumnName;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        duedate.HeaderText = &lt;span style="COLOR: rgb(0,96,128)"&gt;"due date"&lt;/span&gt;;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        duedate.DataFormatString = &lt;span style="COLOR: rgb(0,96,128)"&gt;"{0:MMM-dd-yyyy}"&lt;/span&gt;; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        GridView1.Columns.Add(duedate);&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;// Bind the Grid   &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        GridView1.DataBind();        &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    }&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt; The above code adds a select button to the grid. To capture row info when the select button is clicked you can use the SelectedIndexChanged event handler.&lt;/p&gt;
&lt;div style="BORDER-BOTTOM: silver 1px solid; TEXT-ALIGN: left; BORDER-LEFT: silver 1px solid; PADDING-BOTTOM: 4px; LINE-HEIGHT: 12pt; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 20px 0px 10px; PADDING-LEFT: 4px; WIDTH: 100%; PADDING-RIGHT: 4px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; HEIGHT: 150px; MAX-HEIGHT: 200px; FONT-SIZE: 8pt; OVERFLOW: auto; BORDER-TOP: silver 1px solid; CURSOR: text; BORDER-RIGHT: silver 1px solid; PADDING-TOP: 4px" id="codeSnippetWrapper"&gt;
&lt;div style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px" id="codeSnippet"&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;protected&lt;/span&gt; &lt;span style="COLOR: rgb(0,0,255)"&gt;void&lt;/span&gt; GridView1_SelectedIndexChanged(&lt;span style="COLOR: rgb(0,0,255)"&gt;object&lt;/span&gt; sender, EventArgs e)&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;{&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    &lt;span style="COLOR: rgb(0,128,0)"&gt;//to get the row that was selected in the grid&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    &lt;span style="COLOR: rgb(0,128,0)"&gt;//cell 0 is the button&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    Label1.Text = &lt;span style="COLOR: rgb(0,96,128)"&gt;"You have selected isbn "&lt;/span&gt; + GridView1.SelectedRow.Cells[1].Text +&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,96,128)"&gt;" and copy number "&lt;/span&gt; + GridView1.SelectedRow.Cells[2].Text;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;}&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt; Some formatting is best done while the grid is being populated with data, especially if the formatting depends on the data. The code below highlights the due date column red if the book is overdue. This uses the RowDataBound event handler. The width of cells can also be changed here.&lt;/p&gt;
&lt;div style="BORDER-BOTTOM: silver 1px solid; TEXT-ALIGN: left; BORDER-LEFT: silver 1px solid; PADDING-BOTTOM: 4px; LINE-HEIGHT: 12pt; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 20px 0px 10px; PADDING-LEFT: 4px; WIDTH: 100%; PADDING-RIGHT: 4px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; HEIGHT: 275px; MAX-HEIGHT: 300px; FONT-SIZE: 8pt; OVERFLOW: auto; BORDER-TOP: silver 1px solid; CURSOR: text; BORDER-RIGHT: silver 1px solid; PADDING-TOP: 4px" id="codeSnippetWrapper"&gt;
&lt;div style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px" id="codeSnippet"&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    &lt;span style="COLOR: rgb(0,0,255)"&gt;protected&lt;/span&gt; &lt;span style="COLOR: rgb(0,0,255)"&gt;void&lt;/span&gt; GridView1_RowDataBound(&lt;span style="COLOR: rgb(0,0,255)"&gt;object&lt;/span&gt; sender, GridViewRowEventArgs e)&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,128,0)"&gt;//change the width of a column&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        e.Row.Cells[3].Width = 250;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;span style="COLOR: rgb(0,0,255)"&gt;if&lt;/span&gt; (e.Row.RowType == DataControlRowType.DataRow)&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;            &lt;span style="COLOR: rgb(0,0,255)"&gt;if&lt;/span&gt; ((DateTime.Parse(e.Row.Cells[5].Text)).Date &amp;lt; DateTime.Now.Date)&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;            {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;                &lt;span style="COLOR: rgb(0,128,0)"&gt;//change the backcolor of a cell if overdue&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;                e.Row.Cells[5].BackColor = System.Drawing.Color.Red;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;            }&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        }&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;        &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    }&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Technique 2: &lt;/u&gt;&lt;/strong&gt;&lt;strong&gt;&lt;u&gt;With an ObjectDatasource&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; Drag an ObjectDataSource onto the page&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_34.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="612" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_16.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Use the ObjectDataSource’s smart tag to configure.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_36.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="642" height="116" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_17.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt; A wizard will start. Choose your business layer component.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_6.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="624" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_2.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Choose the same business component method that you called from the button click in technique 1.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_8.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="625" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_3.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Choose the field on the form to pass into that method. In this example it is Textbox1.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_10.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="629" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_4.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Click Finish. The default formatted grid is displayed.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_12.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="539" height="482" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_5.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt; The next step is to format each column as you want. Click the GridView’s smart tag and choose Edit Columns.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_14.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="644" height="249" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_6.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Remove columns you don't want by highlighting them in the selected fields box and click the red X.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_18.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="594" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_8.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt; Change column properties like header text and alignment.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_20.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="388" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_9.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Format dates using format strings.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_22.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="529" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_10.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt; Set column widths by using ItemStyle&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_24.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="485" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_11.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Add a Select Button&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_26.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="593" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_12.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Move the Select button to the first position using the up arrow.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_28.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="594" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_13.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Click OK, now the grid is formatted as desired.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_30.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="612" height="484" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_14.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Change the Button Click to use the Select method of the ObjectDataSource. Notice there is a lot less code.&lt;/p&gt;
&lt;div style="BORDER-BOTTOM: silver 1px solid; TEXT-ALIGN: left; BORDER-LEFT: silver 1px solid; PADDING-BOTTOM: 4px; LINE-HEIGHT: 12pt; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 20px 0px 10px; PADDING-LEFT: 4px; WIDTH: 100%; PADDING-RIGHT: 4px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; HEIGHT: 208px; MAX-HEIGHT: 200px; FONT-SIZE: 8pt; OVERFLOW: auto; BORDER-TOP: silver 1px solid; CURSOR: text; BORDER-RIGHT: silver 1px solid; PADDING-TOP: 4px" id="codeSnippetWrapper"&gt;
&lt;div style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px" id="codeSnippet"&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;protected&lt;/span&gt; &lt;span style="COLOR: rgb(0,0,255)"&gt;void&lt;/span&gt; Button1_Click(&lt;span style="COLOR: rgb(0,0,255)"&gt;object&lt;/span&gt; sender, EventArgs e)&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;{&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    &lt;span style="COLOR: rgb(0,128,0)"&gt;//get a instance of business layer class&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    JL.LibraryBusiness.BusinessLayer bl = &lt;span style="COLOR: rgb(0,0,255)"&gt;new&lt;/span&gt; JL.LibraryBusiness.BusinessLayer();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    &lt;span style="COLOR: rgb(0,128,0)"&gt;//get page data (non grid) by calling method&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    JL.LibraryEntities.Member mymember = bl.GetMember(&lt;span style="COLOR: rgb(0,0,255)"&gt;short&lt;/span&gt;.Parse(TextBox1.Text));&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    TextBox2.Text = mymember.LastName;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    &lt;span style="COLOR: rgb(0,128,0)"&gt;// fill the grid&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; 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: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;    ObjectDataSource1.Select();&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="BORDER-BOTTOM-STYLE: none; TEXT-ALIGN: left; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: rgb(244,244,244); MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: &amp;quot;Courier New&amp;quot;, courier, monospace; DIRECTION: ltr; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;}&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;The SelectedIndexChanged event handler is the same as technique 1.&lt;/p&gt;
&lt;p&gt;The column sizing can be removed from RowDatabound, otherwise it is also the same.&lt;/p&gt;
&lt;p&gt; In both techniques the page displays with proper formatting.&lt;/p&gt;
&lt;p&gt;&lt;a rel="lightbox" href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_32.png"&gt;&lt;img style="BORDER-RIGHT-WIDTH: 0px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title="image" border="0" alt="image" width="644" height="475" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/BindinganASP.NETGridviewtoatypeddataset_74D0/image_thumb_15.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;  &lt;/p&gt;
&lt;p&gt;That is it. Good luck with your formatting!&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:1794a526-5f0d-4819-abea-5c6b95596683" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a rel="tag" href="http://technorati.com/tags/C%23"&gt;C#&lt;/a&gt;,&lt;a rel="tag" href="http://technorati.com/tags/.NET"&gt;.NET&lt;/a&gt;,&lt;a rel="tag" href="http://technorati.com/tags/ASP.NET"&gt;ASP.NET&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geekswithblogs.net/RockStarCoder/aggbug/136189.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/RockStarCoder/comments/136189.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/RockStarCoder/comments/commentRss/136189.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/RockStarCoder/services/trackbacks/136189.aspx</trackback:ping>
    </entry>
    <entry>
        <title>Adding your WPF control to the toolbox</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/RockStarCoder/archive/2009/07/15/adding-your-wpf-control-to-the-toolbox.aspx" />
        <id>http://geekswithblogs.net/RockStarCoder/archive/2009/07/15/adding-your-wpf-control-to-the-toolbox.aspx</id>
        <published>2009-07-15T18:10:00-04:00:00</published>
        <updated>2009-07-15T10:34:30Z</updated>
        <content type="html">&lt;p&gt;We all reuse our windows controls out of the toolbox so why not our WPF user controls? The process is really the same. To show the steps involved let’s first write a simple WPF user control.&lt;/p&gt;
&lt;p&gt; &lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_4.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="366" alt="image" width="543" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_1.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;After renaming the control and adding a WPF application project to my solution(to test with), my solution looks like this&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_52.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="244" alt="image" width="214" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_25.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Since the functionality of the control is not important in this article, I just pasted in some animation code from msdn into my MyDemoControl.xaml file.  &lt;/p&gt;
&lt;div id="codeSnippetWrapper" style="BORDER-RIGHT: silver 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: silver 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 8pt; PADDING-BOTTOM: 4px; MARGIN: 20px 0px 10px; OVERFLOW: auto; BORDER-LEFT: silver 1px solid; WIDTH: 97.5%; CURSOR: text; DIRECTION: ltr; MAX-HEIGHT: 200px; LINE-HEIGHT: 12pt; PADDING-TOP: 4px; BORDER-BOTTOM: silver 1px solid; FONT-FAMILY: 'Courier New', courier, monospace; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left"&gt;
&lt;div id="codeSnippet" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;UserControl&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;x:Class&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="MyDemoControl.MyDemoControl"&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;    &lt;span style="COLOR: #ff0000"&gt;xmlns&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="http://schemas.microsoft.com/winfx/2006/xaml/presentation"&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;    &lt;span style="COLOR: #ff0000"&gt;xmlns:x&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="http://schemas.microsoft.com/winfx/2006/xaml"&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;    &lt;span style="COLOR: #ff0000"&gt;Height&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="156"&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;Width&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="267"&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;    &lt;span style="COLOR: #008000"&gt;&amp;lt;!-- This example :&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #008000"&gt;    from http://msdn.microsoft.com/en-us/library/system.windows.media.animation.pointanimation.aspx&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #008000"&gt;    shows how to use PointAnimation to animate the&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #008000"&gt;    position of an ellipse by animating the Center property of an &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #008000"&gt;    EllipseGeometry. PointAnimation is used because the Center property&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #008000"&gt;    takes a Point value. --&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;        &lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;Canvas&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;            &lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;Path&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;Fill&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="Blue"&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;Margin&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="15,15,15,15"&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                &lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;Path.Data&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                    &lt;span style="COLOR: #008000"&gt;&amp;lt;!-- Describes an ellipse. --&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                    &lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;EllipseGeometry&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;x:Name&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="MyAnimatedEllipseGeometry"&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                    &lt;span style="COLOR: #ff0000"&gt;Center&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="0,0"&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;RadiusX&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="15"&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;RadiusY&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="15"&lt;/span&gt; &lt;span style="COLOR: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                &lt;span style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;Path.Data&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                &lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;Path.Triggers&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                    &lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;EventTrigger&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;RoutedEvent&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="Path.Loaded"&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                        &lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;BeginStoryboard&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;Name&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="MyBeginStoryboard"&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                            &lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;Storyboard&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                                &lt;span style="COLOR: #008000"&gt;&amp;lt;!-- Animate the Center property so that the ellipse animates from &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #008000"&gt;                                one point on the screen to another. --&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                                &lt;span style="COLOR: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;PointAnimation&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                                &lt;span style="COLOR: #ff0000"&gt;Storyboard&lt;/span&gt;.&lt;span style="COLOR: #ff0000"&gt;TargetProperty&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="Center"&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                                &lt;span style="COLOR: #ff0000"&gt;Storyboard&lt;/span&gt;.&lt;span style="COLOR: #ff0000"&gt;TargetName&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="MyAnimatedEllipseGeometry"&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                                &lt;span style="COLOR: #ff0000"&gt;Duration&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="0:0:2"&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;From&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="0,0"&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;To&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="156,267"&lt;/span&gt; &lt;span style="COLOR: #ff0000"&gt;RepeatBehavior&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;="Forever"&lt;/span&gt; &lt;span style="COLOR: #0000ff"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                            &lt;span style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;Storyboard&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                        &lt;span style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;BeginStoryboard&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                    &lt;span style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;EventTrigger&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;                &lt;span style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;Path.Triggers&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;            &lt;span style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;Path&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;        &lt;span style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;Canvas&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #800000"&gt;UserControl&lt;/span&gt;&lt;span style="COLOR: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Now let’s add the control to the toolbox!&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Step 1:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt; Add a using statement to the top of you control's .cs file. This is needed for the ToolboxBitmap we will be using. &lt;/p&gt;
&lt;div id="codeSnippetWrapper" style="BORDER-RIGHT: silver 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: silver 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 8pt; PADDING-BOTTOM: 4px; MARGIN: 20px 0px 10px; OVERFLOW: auto; BORDER-LEFT: silver 1px solid; WIDTH: 30.51%; CURSOR: text; DIRECTION: ltr; MAX-HEIGHT: 200px; LINE-HEIGHT: 12pt; PADDING-TOP: 4px; BORDER-BOTTOM: silver 1px solid; FONT-FAMILY: 'Courier New', courier, monospace; HEIGHT: 63px; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left"&gt;
&lt;div id="codeSnippet" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #0000ff"&gt;using&lt;/span&gt; System.Drawing;&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Step 2:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Add a image resource to the project for an icon. (right click the project in solution explorer, choose properties, choose Resources tab)&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_10.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="244" alt="image" width="413" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_4.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;You can use an existing or create a new icon. &lt;strong&gt;I created a new one.&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;First select Images from the left dropdown&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_32.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="159" alt="image" width="244" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_15.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Then click the add resource button&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_34.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="86" alt="image" width="355" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_16.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Enter the image name in the dialog that pops up.&lt;/p&gt;
&lt;p&gt;The name you use is extremely important.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_30.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="147" alt="image" width="448" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_14.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Note it should be the class name followed by a period then the word “icon”.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_36.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="385" alt="image" width="543" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_17.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;I tried to draw a “W” for my icon.&lt;/p&gt;
&lt;p&gt;In the properties window change the Build Action property for the BMP to Embedded Resource.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_38.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="218" alt="image" width="244" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_18.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Note the full name of the file is the class + “icon” + the extension&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Step 3:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Add an ToolboxBitmap attribute to your control class.&lt;/p&gt;
&lt;div id="codeSnippetWrapper" style="BORDER-RIGHT: silver 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: silver 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 8pt; PADDING-BOTTOM: 4px; MARGIN: 20px 0px 10px; OVERFLOW: auto; BORDER-LEFT: silver 1px solid; WIDTH: 78.57%; CURSOR: text; DIRECTION: ltr; MAX-HEIGHT: 200px; LINE-HEIGHT: 12pt; PADDING-TOP: 4px; BORDER-BOTTOM: silver 1px solid; FONT-FAMILY: 'Courier New', courier, monospace; HEIGHT: 134px; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left"&gt;
&lt;div id="codeSnippet" style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;[ToolboxBitmap(&lt;span style="COLOR: #0000ff"&gt;typeof&lt;/span&gt;(MyDemoControl))]&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;&lt;span style="COLOR: #0000ff"&gt;public&lt;/span&gt; &lt;span style="COLOR: #0000ff"&gt;partial&lt;/span&gt; &lt;span style="COLOR: #0000ff"&gt;class&lt;/span&gt; MyDemoControl : UserControl&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;{&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;    &lt;span style="COLOR: #0000ff"&gt;public&lt;/span&gt; MyDemoControl()&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: white; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;    {&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 8pt; PADDING-BOTTOM: 0px; MARGIN: 0em; OVERFLOW: visible; WIDTH: 100%; COLOR: black; DIRECTION: ltr; BORDER-TOP-STYLE: none; LINE-HEIGHT: 12pt; PADDING-TOP: 0px; FONT-FAMILY: 'Courier New', courier, monospace; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: none"&gt;        InitializeComponent();&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Notice only the type is needed because of our naming convention used on our bitmap.&lt;/p&gt;
&lt;p&gt;Build the control project. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Step 4:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Now to add it to the toolbox, &lt;/p&gt;
&lt;p&gt;Right click in the toolbox (where you want the control to be located) and select Choose Items.&lt;/p&gt;
&lt;p&gt; &lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_16.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="262" alt="image" width="316" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_7.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;You may need to wait a bit for the Choose Toolbox Items dialog to appear. When it does,&lt;/p&gt;
&lt;p&gt;Choose the WPF Components tab. This is important! The .Net tab will not work for WPF controls.&lt;/p&gt;
&lt;p&gt;Click the browse button and navigate out to your DLL, choose it, click Open.&lt;/p&gt;
&lt;p&gt; &lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_50.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="397" alt="image" width="559" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_24.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Once you have selected your DLL you should see the icon that will be used for your control on the dialog  &lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_42.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="413" alt="image" width="563" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_20.png" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Click OK. You should now see the control in your toolbox with proper icon.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_46.png"&gt;&lt;img title="image" style="BORDER-TOP-WIDTH: 0px; DISPLAY: inline; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height="121" alt="image" width="360" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/HowtoPutyourWPFcontrolsintothetoolbox_C3B7/image_thumb_22.png" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;u&gt;Step 5:&lt;/u&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Switch back to the WPF Application project in the solution.&lt;/p&gt;
&lt;p&gt;Drag your new control out of the toolbox and position it in the Window element.&lt;/p&gt;
&lt;p&gt;Set the WPF Application project to be startup.&lt;/p&gt;
&lt;p&gt;Run to test the behavior.&lt;/p&gt;
&lt;div class="wlWriterEditableSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:938d053a-fb13-4abe-b3e2-8e29b8322ea0" style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; FLOAT: none; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px"&gt;Technorati Tags: &lt;a rel="tag" href="http://technorati.com/tags/WPF"&gt;WPF&lt;/a&gt;,&lt;a rel="tag" href="http://technorati.com/tags/Controls"&gt;Controls&lt;/a&gt;,&lt;a rel="tag" href="http://technorati.com/tags/Toolbox"&gt;Toolbox&lt;/a&gt;,&lt;a rel="tag" href="http://technorati.com/tags/Visual+Studio"&gt;Visual Studio&lt;/a&gt;&lt;/div&gt;
&lt;img src="http://geekswithblogs.net/RockStarCoder/aggbug/133516.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/RockStarCoder/comments/133516.aspx</wfw:comment>
        <slash:comments>4</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/RockStarCoder/comments/commentRss/133516.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/RockStarCoder/services/trackbacks/133516.aspx</trackback:ping>
    </entry>
    <entry>
        <title>Santa checked his list, do you?</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/RockStarCoder/archive/2009/07/08/santa-checked-his-list-do-you.aspx" />
        <id>http://geekswithblogs.net/RockStarCoder/archive/2009/07/08/santa-checked-his-list-do-you.aspx</id>
        <published>2009-07-08T14:12:16-04:00:00</published>
        <updated>2009-11-11T00:29:38Z</updated>
        <content type="html">&lt;p&gt;Have you ever tried to implicitly cast a larger data type into a smaller type (as far as the number of bits) through a plain old assignment?  c# wont let you do it!&lt;/p&gt;
&lt;p&gt; &lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/Santacheckedhislistdoyou_137F5/error_2.jpg"&gt;&lt;img height="152" width="642" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/Santacheckedhislistdoyou_137F5/error_thumb.jpg" alt="error" style="border-width: 0px; display: inline; width: 606px; height: 150px;" title="error" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;In this case the &lt;font face="cou" color="#0000ff"&gt;long&lt;/font&gt;’s value of 5 will definitely fit into an &lt;font face="cou" color="#0000ff"&gt;int&lt;/font&gt; but the compiler will still give you a no-no.  Its avoiding possibly dropping some of the 64 bits when assigning the value to 32 bits. Not to worry, you can always do the explicit cast.&lt;/p&gt;
&lt;div style="border: 1px solid silver; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 84.66%; cursor: text; direction: ltr; max-height: 200px; line-height: 12pt; font-family: 'Courier New',courier,monospace; height: 81px; background-color: rgb(244, 244, 244); text-align: left;" id="codeSnippetWrapper"&gt;
&lt;div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 96.45%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; height: 62px; background-color: rgb(244, 244, 244); text-align: left;" id="codeSnippet"&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;int&lt;/span&gt; myInt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;long&lt;/span&gt; myLong = 5; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;myInt = (&lt;span style="color: rgb(0, 0, 255);"&gt;int&lt;/span&gt;)myLong;&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;This lets the compiler know that you purposely want to do the cast even though bits may be lost. But wait, what happens if the &lt;font face="cou" color="#0000ff"&gt;long&lt;/font&gt;’s value&lt;strong&gt;&lt;u&gt;&lt;em&gt; is&lt;/em&gt;&lt;/u&gt;&lt;/strong&gt; too big to fit into an &lt;font face="cou" color="#0000ff"&gt;int&lt;/font&gt; and you do the explicit cast anyway without knowing. Well the default behavior is to do the cast, drop some bits and keep quiet about it. Unfortunately your value in the &lt;font face="cou" color="#0000ff"&gt;int&lt;/font&gt; probably wont be what you wanted. Sadly you wont know about it until you try to use it.&lt;/p&gt;
&lt;p&gt;The same thing is true in the situation below.&lt;/p&gt;
&lt;div style="border: 1px solid silver; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 96.68%; cursor: text; direction: ltr; max-height: 200px; line-height: 12pt; font-family: 'Courier New',courier,monospace; height: 85px; background-color: rgb(244, 244, 244); text-align: left;" id="codeSnippetWrapper"&gt;
&lt;div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 97.77%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; height: 62px; background-color: rgb(244, 244, 244); text-align: left;" id="codeSnippet"&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;int&lt;/span&gt; c = 2147483647;    &lt;span style="color: rgb(0, 128, 0);"&gt;//will fit in 32 bits&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;int&lt;/span&gt; d = 2147483647;    &lt;span style="color: rgb(0, 128, 0);"&gt;//will fit in 32 bits   &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;myInt = c * d;         &lt;span style="color: rgb(0, 128, 0);"&gt;//product wont fit&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;No exception will be thrown. To remedy this situation you can use a &lt;font color="#0000ff"&gt;checked&lt;/font&gt; block. By wrapping the code which may drop or overflow bits in a &lt;font color="#0000ff"&gt;checked&lt;/font&gt; block, you can for an force an &lt;font color="#408080"&gt;OverflowException&lt;/font&gt; to be thrown if it occurs.&lt;/p&gt;
&lt;div style="border: 1px solid silver; margin: 20px 0px 10px; padding: 4px; font-size: 8pt; width: 93.71%; cursor: text; direction: ltr; max-height: 400px; line-height: 12pt; font-family: 'Courier New',courier,monospace; height: 304px; background-color: rgb(244, 244, 244); text-align: left;" id="codeSnippetWrapper"&gt;
&lt;div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;" id="codeSnippet"&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;//the setup&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;int&lt;/span&gt; myInt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;long&lt;/span&gt; myLong = 2147483648; &lt;span style="color: rgb(0, 128, 0);"&gt;//too big to fit in an int&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;myInt = (&lt;span style="color: rgb(0, 0, 255);"&gt;int&lt;/span&gt;)myLong;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;try&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;{&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;    &lt;span style="color: rgb(0, 0, 255);"&gt;checked&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;    {&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;        myInt = (&lt;span style="color: rgb(0, 0, 255);"&gt;int&lt;/span&gt;)myLong;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;        &lt;span style="color: rgb(0, 128, 0);"&gt;//bits were lost OverflowException is thrown&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;    }&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;    &lt;span style="color: rgb(0, 128, 0);"&gt;//never will reach this&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;}&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;catch&lt;/span&gt; (OverflowException ex)&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;{&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;    &lt;span style="color: rgb(0, 128, 0);"&gt;//do something&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;}&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Using the &lt;font color="#0000ff"&gt;checked&lt;/font&gt; block will work for either of the cases described above. There is also an &lt;font color="#0000ff"&gt;unchecked&lt;/font&gt; block to say not to check for overflow and you can also create &lt;font color="#0000ff"&gt;checked&lt;/font&gt; and &lt;font color="#0000ff"&gt;unchecked&lt;/font&gt;  expressions. There is even a compiler option to turn &lt;font color="#0000ff"&gt;checked&lt;/font&gt; or &lt;font color="#0000ff"&gt;unchecked&lt;/font&gt;  on globally for your code (Project Properties =&amp;gt; Build tab =&amp;gt; Advanced button).&lt;/p&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/Santacheckedhislistdoyou_137F5/checked_2.jpg"&gt;&lt;img height="403" width="642" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/RockStarCoder/WindowsLiveWriter/Santacheckedhislistdoyou_137F5/checked_thumb.jpg" alt="checked" style="border-width: 0px; display: inline;" title="checked" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Using the &lt;font color="#0000ff"&gt;checked&lt;/font&gt; or &lt;font color="#0000ff"&gt;unchecked&lt;/font&gt; blocks in your code will override any compiler option for that block of code.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div style="margin: 0px; padding: 0px; display: inline; float: none;" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:f1486eff-806a-48c4-ae8a-e84855d79f75" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/C%23" rel="tag"&gt;C#&lt;/a&gt;,&lt;a href="http://technorati.com/tags/.Net" rel="tag"&gt;.Net&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geekswithblogs.net/RockStarCoder/aggbug/133371.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/RockStarCoder/comments/133371.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/RockStarCoder/comments/commentRss/133371.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/RockStarCoder/services/trackbacks/133371.aspx</trackback:ping>
    </entry>
    <entry>
        <title>Being Sensitive in an Insensitive World</title>
        <link rel="self" type="text/html" href="http://geekswithblogs.net/RockStarCoder/archive/2009/07/03/being-sensitive-in-an-insensitive-world.aspx" />
        <id>http://geekswithblogs.net/RockStarCoder/archive/2009/07/03/being-sensitive-in-an-insensitive-world.aspx</id>
        <published>2009-07-03T22:43:00-04:00:00</published>
        <updated>2009-11-11T00:29:48Z</updated>
        <content type="html">&lt;p&gt;SQL Server allows you to set a case sensitive collation at both the database and column level but often you will need to do a case sensitive search when everything is case insensitive. Not to worry, you can set the collation directly in the query.&lt;/p&gt;
&lt;div style="border: 1px solid silver; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; direction: ltr; max-height: 820px; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;" id="codeSnippetWrapper"&gt;
&lt;div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;" id="codeSnippet"&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;/*&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;To test string equality including case when the DB is &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;not case sensitive you must &lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;include collation as part of the test as follows:&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;*/&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;declare&lt;/span&gt; @mystring1 &lt;span style="color: rgb(0, 0, 255);"&gt;varchar&lt;/span&gt;(10) &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;declare&lt;/span&gt; @mystring2 &lt;span style="color: rgb(0, 0, 255);"&gt;varchar&lt;/span&gt;(10) &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;set&lt;/span&gt; @mystring1 =&lt;span style="color: rgb(0, 96, 128);"&gt;'abc'&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;set&lt;/span&gt; @mystring2 =&lt;span style="color: rgb(0, 96, 128);"&gt;'ABC'&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;-- by default&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;if&lt;/span&gt; @mystring1 = @mystring2&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;                &lt;span style="color: rgb(0, 0, 255);"&gt;print&lt;/span&gt; &lt;span style="color: rgb(0, 96, 128);"&gt;'match'&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;else&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;                &lt;span style="color: rgb(0, 0, 255);"&gt;print&lt;/span&gt; &lt;span style="color: rgb(0, 96, 128);"&gt;'not a match'&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;                &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;-- by adding a case sensitive colation whe can check case&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;if&lt;/span&gt; @mystring1 = @mystring2 &lt;span style="color: rgb(0, 0, 255);"&gt;COLLATE&lt;/span&gt; Latin1_General_CS_AS&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;                &lt;span style="color: rgb(0, 0, 255);"&gt;print&lt;/span&gt; &lt;span style="color: rgb(0, 96, 128);"&gt;'match'&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;else&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;                &lt;span style="color: rgb(0, 0, 255);"&gt;print&lt;/span&gt; &lt;span style="color: rgb(0, 96, 128);"&gt;'not a match'&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;                &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;-- now make them equal in case and test again&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;set&lt;/span&gt; @mystring2 =&lt;span style="color: rgb(0, 96, 128);"&gt;'abc'&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;if&lt;/span&gt; @mystring1 = @mystring2 &lt;span style="color: rgb(0, 0, 255);"&gt;COLLATE&lt;/span&gt; Latin1_General_CS_AS&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;                &lt;span style="color: rgb(0, 0, 255);"&gt;print&lt;/span&gt; &lt;span style="color: rgb(0, 96, 128);"&gt;'match'&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;else&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;                &lt;span style="color: rgb(0, 0, 255);"&gt;print&lt;/span&gt; &lt;span style="color: rgb(0, 96, 128);"&gt;'not a match'&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 128, 0);"&gt;/*Here is a sample use */&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;use&lt;/span&gt; Northwind&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;go&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;select&lt;/span&gt; * &lt;span style="color: rgb(0, 0, 255);"&gt;from&lt;/span&gt; customers &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;where&lt;/span&gt; companyname=&lt;span style="color: rgb(0, 96, 128);"&gt;'alfreds futterkiste'&lt;/span&gt; &lt;span style="color: rgb(0, 128, 0);"&gt;-- works&lt;/span&gt;&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;select&lt;/span&gt; * &lt;span style="color: rgb(0, 0, 255);"&gt;from&lt;/span&gt; customers &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;where&lt;/span&gt; companyname=&lt;span style="color: rgb(0, 96, 128);"&gt;'alfreds futterkiste'&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;COLLATE&lt;/span&gt; Latin1_General_CS_AS  --fails&lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt; &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: white; text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;select&lt;/span&gt; * &lt;span style="color: rgb(0, 0, 255);"&gt;from&lt;/span&gt; customers &lt;/pre&gt;
&lt;!--CRLF--&gt;
&lt;pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; direction: ltr; line-height: 12pt; font-family: 'Courier New',courier,monospace; background-color: rgb(244, 244, 244); text-align: left;"&gt;&lt;span style="color: rgb(0, 0, 255);"&gt;where&lt;/span&gt; companyname=&lt;span style="color: rgb(0, 96, 128);"&gt;'Alfreds Futterkiste'&lt;/span&gt; &lt;span style="color: rgb(0, 0, 255);"&gt;COLLATE&lt;/span&gt; Latin1_General_CS_AS  --works&lt;/pre&gt;
&lt;!--CRLF--&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div style="margin: 0px; padding: 0px; display: inline; float: none;" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:8fef7999-54c8-4d80-8c40-fc5604b81158" class="wlWriterEditableSmartContent"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/TSQL" rel="tag"&gt;TSQL&lt;/a&gt;,&lt;a href="http://technorati.com/tags/SQL+SERVER" rel="tag"&gt;SQL SERVER&lt;/a&gt;&lt;/div&gt;&lt;img src="http://geekswithblogs.net/RockStarCoder/aggbug/133242.aspx" width="1" height="1" /&gt;</content>
        <wfw:comment>http://geekswithblogs.net/RockStarCoder/comments/133242.aspx</wfw:comment>
        <slash:comments>0</slash:comments>
        <wfw:commentRss>http://geekswithblogs.net/RockStarCoder/comments/commentRss/133242.aspx</wfw:commentRss>
        <trackback:ping>http://geekswithblogs.net/RockStarCoder/services/trackbacks/133242.aspx</trackback:ping>
    </entry>
</feed>