<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.microsoft.co.il/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Design .Net</title><link>http://blogs.microsoft.co.il/blogs/yogev/</link><description>&lt;b&gt;&lt;font size="2" color="#000873"&gt;Designers, Controls And everything between them.&lt;/font&gt;&lt;/b&gt;</description><dc:language>en</dc:language><generator>CommunityServer 2007.1 (Build: 20917.1142)</generator><item><title>Debugging Windows Service StartUp</title><link>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/08/26/debugging-windows-service-startup.aspx</link><pubDate>Tue, 26 Aug 2008 19:36:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:132605</guid><dc:creator>Yogev</dc:creator><slash:comments>4</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/yogev/rsscomments.aspx?PostID=132605</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/08/26/debugging-windows-service-startup.aspx#comments</comments><description>&lt;p&gt;Lately I have been trying to find a good and simple way&amp;nbsp;to debug a &lt;i&gt;Windows&lt;/i&gt; &lt;i&gt;Service Project &lt;/i&gt;most ways I came a cross on the web have suggested Starting your widows service with a sleep timer which will allow enough time to attache a debugger to to your service. The other common way of doing this is to initiate a debugger &lt;a href="http://weblogs.asp.net/paulballard/archive/2005/07/12/419175.aspx"&gt;launch&lt;/a&gt; each time the service Startup and to control the debugger launching in a configurable manageable way. I found this to approaches rather complicated.&lt;/p&gt;
&lt;p&gt;In this post I will suggest an alternate method of debugging a &lt;i&gt;service&lt;/i&gt; at startup.&amp;nbsp;&amp;nbsp; &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Step 1&lt;/b&gt;: Create a windows service project :&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/DebuggingWindowsServiceStartUp_B73C/windbg1.jpg"&gt;&lt;img src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/DebuggingWindowsServiceStartUp_B73C/windbg1_thumb.jpg" style="border-width:0px;" alt="windbg1" width="320" border="0" height="219" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Step 2&lt;/b&gt;: Create &lt;b&gt;two &lt;/b&gt;new services, one will be your main service which will perform all of your service logic, the other one will be you debug service. The debug service will help us debug the main service &lt;i&gt;OnStart&lt;/i&gt;. This will looks a little something like this:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/DebuggingWindowsServiceStartUp_B73C/debug01_1.jpg"&gt;&lt;img src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/DebuggingWindowsServiceStartUp_B73C/debug01_thumb_1.jpg" style="border-width:0px;" alt="debug01" width="220" border="0" height="244" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Please note that in order to identify both Services in Services window we need to specify their names:&lt;/p&gt;
&lt;p&gt;Debug service:&lt;/p&gt;
&lt;div style="background:white none repeat scroll 0% 0%;font-size:10pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;color:black;font-family:courier new;"&gt;
&lt;div style="padding:5px;background:white none repeat scroll 0% 0%;overflow:scroll;font-size:10pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;width:460px;color:black;max-height:350px;font-family:courier new;height:133px;"&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 29&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; InitializeComponent()&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 30&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 31&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:green;"&gt;// &lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 32&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:green;"&gt;// Service2&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 33&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:green;"&gt;// &lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 34&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;this&lt;/span&gt;.ServiceName = &lt;span&gt;&amp;quot;DebugService&amp;quot;&lt;/span&gt;;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 35&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 36&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;div style="background:white none repeat scroll 0% 0%;font-size:10pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;color:black;font-family:courier new;"&gt;&amp;nbsp;&lt;/div&gt;
&lt;div style="background:white none repeat scroll 0% 0%;font-size:10pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;color:black;font-family:courier new;"&gt;Main service:&lt;/div&gt;
&lt;div style="padding:5px;background:white none repeat scroll 0% 0%;overflow:scroll;font-size:10pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;width:469px;color:black;max-height:350px;font-family:courier new;height:131px;"&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 29&lt;/span&gt;&amp;nbsp;&lt;span style="color:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; InitializeComponent()&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 30&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 31&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:green;"&gt;// &lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 32&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:green;"&gt;// Service1&lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 33&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:green;"&gt;// &lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 34&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;this&lt;/span&gt;.ServiceName = &lt;span&gt;&amp;quot;MainService&amp;quot;&lt;/span&gt;;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 35&lt;/span&gt;&amp;nbsp;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 36&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;&lt;b&gt;Step 3&lt;/b&gt;: Add an Installer to your solution and place both of your &lt;i&gt;services&lt;/i&gt; in the &lt;i&gt;designer&lt;/i&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/DebuggingWindowsServiceStartUp_B73C/debug02_1.jpg"&gt;&lt;img src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/DebuggingWindowsServiceStartUp_B73C/debug02_thumb_1.jpg" style="border-width:0px;" alt="debug02" width="244" border="0" height="189" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Make sure you have named your services in the installer, I prefer naming them with the same prefix this way both of the services will be displayed together in the services list.&lt;/p&gt;
&lt;div style="padding:5px;background:white none repeat scroll 0% 0%;overflow:scroll;font-size:10pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;width:675px;color:black;max-height:350px;font-family:courier new;height:61px;"&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 34&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:green;"&gt;// ServiceName must equal those on ServiceBase derived classes.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 35&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; serviceInstaller1.ServiceName = &lt;span&gt;&amp;quot;MainService&amp;quot;&lt;/span&gt;;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 36&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; serviceInstaller2.ServiceName = &lt;span&gt;&amp;quot;MainDebugService&amp;quot;&lt;/span&gt;;&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;&lt;b&gt;Step 4&lt;/b&gt;: In you program.cs make sure that both &lt;i&gt;services&lt;/i&gt; are added to the &lt;i&gt;ServicesToRun:&lt;/i&gt;&lt;/p&gt;
&lt;div style="padding:5px;background:white none repeat scroll 0% 0%;overflow:scroll;font-size:10pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;width:450px;color:black;max-height:350px;font-family:courier new;"&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 16&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;ServiceBase&lt;/span&gt;[] ServicesToRun;&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 17&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ServicesToRun = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span&gt;ServiceBase&lt;/span&gt;[] &lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 18&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { &lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 19&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span&gt;MainService&lt;/span&gt;(),&lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span&gt;DebugService&lt;/span&gt;() &lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 20&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; };&lt;/p&gt;
&lt;p style="margin:0px;padding:0px;background:transparent none repeat scroll 0% 0%;font-size:8pt;-moz-background-clip:border;-moz-background-origin:padding;-moz-background-inline-policy:continuous;"&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; 21&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span&gt;ServiceBase&lt;/span&gt;.Run(ServicesToRun);&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;&lt;b&gt;Step 5&lt;/b&gt;: Install your service, in the command prompt type &amp;quot;installutil.exe &amp;lt;YourService.exe&amp;gt;&amp;quot;. You can view the services list and check that you services are added successfully. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/DebuggingWindowsServiceStartUp_B73C/debug03.jpg"&gt;&lt;img src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/DebuggingWindowsServiceStartUp_B73C/debug03_thumb.jpg" style="border-width:0px;" alt="debug03" width="307" border="0" height="219" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Now all you have to do if you wish to debug your OnStart method is to Start your &lt;i&gt;DebugService,&lt;/i&gt; then attach a debugger to the process.exe, place a break point at the &lt;i&gt;OnStart &lt;/i&gt;and finally start your &lt;i&gt;MainService&lt;/i&gt;.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;*Njoy&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=132605" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Debug/default.aspx">Debug</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Service/default.aspx">Service</category></item><item><title>SliverLight2 Beta Quick Tip Panning: Implement MultiScaleImage behavior like in Image Control</title><link>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/04/23/sliverlight2-beta-quick-tip-panning-implement-multiscaleimage-behavior-like-in-image-control.aspx</link><pubDate>Wed, 23 Apr 2008 21:18:14 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:81836</guid><dc:creator>Yogev</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/yogev/rsscomments.aspx?PostID=81836</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/04/23/sliverlight2-beta-quick-tip-panning-implement-multiscaleimage-behavior-like-in-image-control.aspx#comments</comments><description>&lt;p&gt;In my previous &lt;a href="http://blogs.microsoft.co.il/blogs/yogev/archive/2008/03/11/multiscaleimage-in-sliverlight2-beta-tutorial.aspx" target="_blank"&gt;post&lt;/a&gt; on implementing MultiScaleImage behavior like I have mentioned that I will demonstrate on how to implement a panning behavior like to an Image on SilverLight2 Beta.&lt;/p&gt;  &lt;p&gt;In this post I will implement panning behavior like on Image control.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;First we have to Subscribe to the following events, &lt;em&gt;MouseLeftButtonUp&lt;/em&gt;, &lt;em&gt;MouseLeftButtonDown&lt;/em&gt;, &lt;em&gt;MouseMove. &lt;/em&gt;We also need to declare two variables that will save the mouse down position and the status of the mouse button(Up/Down). &lt;/p&gt;  &lt;p&gt;Variables:&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;width:450px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#2b91af;"&gt;Point&lt;/span&gt; lastMousePos = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Point&lt;/span&gt;();&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;bool&lt;/span&gt; startPanning = &lt;span style="color:blue;"&gt;false&lt;/span&gt;;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;events:&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;width:450px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.MouseLeftButtonUp += &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;MouseButtonEventHandler&lt;/span&gt;(Page_MouseLeftButtonUp);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.MouseLeftButtonDown += &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;MouseButtonEventHandler&lt;/span&gt;(Page_MouseLeftButtonDown);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.MouseMove += &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;MouseEventHandler&lt;/span&gt;(Page_MouseMove);&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;strong&gt;Step 2:&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;In the &lt;em&gt;MouseLeftButtonDown&lt;/em&gt; event we need to save the status of our two newly added variables:&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;width:450px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;void&lt;/span&gt; Page_MouseLeftButtonDown(&lt;span style="color:blue;"&gt;object&lt;/span&gt; sender, &lt;span style="color:#2b91af;"&gt;MouseButtonEventArgs&lt;/span&gt; e)&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;{&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; startPanning = &lt;span style="color:blue;"&gt;true&lt;/span&gt;;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; lastMouseDownPos = e.GetPosition(&lt;span style="color:blue;"&gt;this&lt;/span&gt;.MainImage);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;}&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;The &lt;em&gt;MouseMove&lt;/em&gt; event, in this event we will have to handle the &lt;em&gt;Transform &lt;/em&gt;of the Image while the mouse is still moving. Since the code also support Zooming there are two cases of Transformation, when there is ZoomIn/ZoomOut and &lt;strong&gt;no&lt;/strong&gt; zooming. The no zooming section of is the basic of our transformation and it will handle moving the Image around the page. It looks something like this:&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;overflow:scroll;width:682px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;height:182px;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;void&lt;/span&gt; Page_MouseMove(&lt;span style="color:blue;"&gt;object&lt;/span&gt; sender, &lt;span style="color:#2b91af;"&gt;MouseEventArgs&lt;/span&gt; e)&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;{&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;if&lt;/span&gt; (!startPanning)&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;return&lt;/span&gt;;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:#2b91af;"&gt;Transform&lt;/span&gt; currentTransform;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; currentTransform = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;TranslateTransform&lt;/span&gt;();&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; ((&lt;span style="color:#2b91af;"&gt;TranslateTransform&lt;/span&gt;)currentTransform).X = (e.GetPosition(&lt;span style="color:blue;"&gt;this&lt;/span&gt;).X - lastMouseDownPos.X);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; ((&lt;span style="color:#2b91af;"&gt;TranslateTransform&lt;/span&gt;)currentTransform).Y = (e.GetPosition(&lt;span style="color:blue;"&gt;this&lt;/span&gt;).Y - lastMouseDownPos.Y);&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;You may have noticed that we have to subtract the current mouse position - e.GetPosition(&lt;font color="#0000ff"&gt;this&lt;/font&gt;) with the mouse original left button position - lastMouseDownPos. This is needed to keep the relative position of inside the Image control.&lt;/p&gt;  &lt;p&gt;Now we have to handle the mouse position in ZoomIn/ZoomOut mode: &lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;overflow:scroll;width:681px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;height:208px;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (zoom != 1)&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;{&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160; &lt;span style="color:#2b91af;"&gt;TransformGroup&lt;/span&gt; group = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;TransformGroup&lt;/span&gt;();&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160; &lt;span style="color:#2b91af;"&gt;ScaleTransform&lt;/span&gt; scaleTransform = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;ScaleTransform&lt;/span&gt;();&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160; ((&lt;span style="color:#2b91af;"&gt;ScaleTransform&lt;/span&gt;)scaleTransform).CenterY = lastMouseDownPos.Y;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160; ((&lt;span style="color:#2b91af;"&gt;ScaleTransform&lt;/span&gt;)scaleTransform).CenterX = lastMouseDownPos.X;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160; ((&lt;span style="color:#2b91af;"&gt;ScaleTransform&lt;/span&gt;)scaleTransform).ScaleX = zoom;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160; ((&lt;span style="color:#2b91af;"&gt;ScaleTransform&lt;/span&gt;)scaleTransform).ScaleY = zoom;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160; group.Children.Add(scaleTransform);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160; group.Children.Add(currentTransform);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160; currentTransform = group;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;}&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;In ZoomIn/ZoomOut we need to add the special &lt;em&gt;Transform&lt;/em&gt; to a &lt;em&gt;TransformGroup&lt;/em&gt; since we are using two &lt;em&gt;Transformation&lt;/em&gt; one for the location of the Image and one for the Zooming.&lt;/p&gt;  &lt;p&gt;Apply the &lt;em&gt;Transformation&lt;/em&gt; to the Image :&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;width:450px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;MainImage.RenderTransform = currentTransform;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&lt;strong&gt;Step 4:&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;On the &lt;em&gt;MouseLeftButtonUp&lt;/em&gt; event we need to clear the Variables - set the &lt;em&gt;lastMousePos&lt;/em&gt; to empty and the &lt;em&gt;startPanning&lt;/em&gt; to &lt;em&gt;false&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;That&amp;#39;s it.&lt;/p&gt;  &lt;p&gt;I have added the &lt;a href="http://cid-f45b4ec764d6da98.skydrive.live.com/self.aspx/Source%20Code/ImagePanningTest.zip" target="_blank"&gt;&lt;em&gt;source code&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Enjoy!&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=81836" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/SilverLight+2/default.aspx">SilverLight 2</category></item><item><title>SilverLight 2 Beta Quick Tip - FullScreen</title><link>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/03/11/silverlight-2-beta-quick-tip-fullscreen.aspx</link><pubDate>Tue, 11 Mar 2008 23:42:08 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:65373</guid><dc:creator>Yogev</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/yogev/rsscomments.aspx?PostID=65373</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/03/11/silverlight-2-beta-quick-tip-fullscreen.aspx#comments</comments><description>&lt;p&gt;In the previous version of SilverLight we could enter FullScreen mode in our &lt;em&gt;Content&lt;/em&gt; using &lt;em&gt;&lt;u&gt;BrowserHost.IsFullScreen.&lt;/u&gt;&lt;/em&gt; &lt;/p&gt;  &lt;p&gt;In SilverLight 2 Beta we no longer have &lt;em&gt;&lt;u&gt;BrowserHost&lt;/u&gt;&lt;/em&gt;, Instead we can use:&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;overflow:scroll;width:450px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#2b91af;"&gt;App&lt;/span&gt;.Current.Host.Content.IsFullScreen = &lt;span style="color:blue;"&gt;true&lt;/span&gt;;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;I have added a source code &lt;em&gt;&lt;a href="http://cid-f45b4ec764d6da98.skydrive.live.com/self.aspx/Source%20Code/ImageTest.zip" target="_blank"&gt;Sample&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Enjoy!&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=65373" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/SilverLight+2/default.aspx">SilverLight 2</category></item><item><title>SliverLight2 Beta Quick Tip: Implement MultiScaleImage behavior like in Image Control</title><link>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/03/11/multiscaleimage-in-sliverlight2-beta-tutorial.aspx</link><pubDate>Tue, 11 Mar 2008 23:39:43 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:64054</guid><dc:creator>Yogev</dc:creator><slash:comments>2</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/yogev/rsscomments.aspx?PostID=64054</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/03/11/multiscaleimage-in-sliverlight2-beta-tutorial.aspx#comments</comments><description>&lt;p&gt;Using &lt;em&gt;MultiScaleImage &lt;/em&gt;control we get a vivid user friendly image manipulation experience in this quick tip I will demonstrate how to provide the same experience using Image control in SilverLight 2 Beta.&lt;/p&gt;  &lt;p&gt;In the &lt;a href="http://blogs.msdn.com/expression/archive/2008/03/09/deep-zoom-sample-with-mousewheel-pan-click-zoom.aspx" target="_blank"&gt;&lt;em&gt;Expression Blend Blog&lt;/em&gt;&lt;/a&gt; we can find the source code on how to implement Zooming using &lt;em&gt;MultiScaleImage &lt;/em&gt;I have used this code and replaced the &lt;em&gt;MultiScaleImage&lt;/em&gt; with Image:&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;overflow:scroll;width:675px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;height:65px;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Grid&lt;/span&gt;&lt;span style="color:red;"&gt; x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:red;"&gt;Name&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;LayoutRoot&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Background&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;White&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&lt;font color="#a31515"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/font&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Image&lt;/span&gt;&lt;span style="color:red;"&gt; Width&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;770&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Height&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;570&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; HorizontalAlignment&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Stretch&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; VerticalAlignment&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Stretch&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:red;"&gt;Name&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;MainImage&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Grid&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;*Notice* I didn&amp;#39;t provided source for our Image.&lt;/p&gt;  &lt;p&gt;And in the Code file I have used &lt;em&gt;ScaleTransform&lt;/em&gt;:&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;overflow:scroll;width:679px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;height:358px;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; Page()&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;{&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; InitializeComponent();&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;this&lt;/span&gt;.MouseMove += &lt;span style="color:blue;"&gt;delegate&lt;/span&gt;(&lt;span style="color:blue;"&gt;object&lt;/span&gt; sender, &lt;span style="color:#2b91af;"&gt;MouseEventArgs&lt;/span&gt; e)&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;this&lt;/span&gt;.lastMousePos = e.GetPosition(&lt;span style="color:blue;"&gt;this&lt;/span&gt;.MainImage);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; };&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;this&lt;/span&gt;.MouseLeftButtonUp += &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;MouseButtonEventHandler&lt;/span&gt;(Page_MouseLeftButtonUp);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;MouseWheelHelper&lt;/span&gt;(&lt;span style="color:blue;"&gt;this&lt;/span&gt;).Moved += &lt;span style="color:blue;"&gt;delegate&lt;/span&gt;(&lt;span style="color:blue;"&gt;object&lt;/span&gt; sender, &lt;span style="color:#2b91af;"&gt;MouseWheelEventArgs&lt;/span&gt; e)&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;if&lt;/span&gt; (e.Delta &amp;gt; 0)&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; zoom *= 1.2;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;else&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; zoom /= 1.2;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:#2b91af;"&gt;ScaleTransform&lt;/span&gt; scaleTransform = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;ScaleTransform&lt;/span&gt;();&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; scaleTransform.CenterY = &lt;span style="color:blue;"&gt;this&lt;/span&gt;.lastMousePos.Y;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; scaleTransform.CenterX = &lt;span style="color:blue;"&gt;this&lt;/span&gt;.lastMousePos.X;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; scaleTransform.ScaleX = zoom;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; scaleTransform.ScaleY = zoom;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; MainImage.RenderTransform = sc;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; };&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;}&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Using this code you will have the same experience.&lt;/p&gt;  &lt;p&gt;In my next post I will try to provide Panning Behavior.&lt;/p&gt;  &lt;p&gt;&lt;em&gt;&lt;a href="http://cid-f45b4ec764d6da98.skydrive.live.com/self.aspx/Source%20Code/ImageTest.zip" target="_blank"&gt;Source Code&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;Enjoy!&amp;#160;&amp;#160; &lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=64054" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/SilverLight+2/default.aspx">SilverLight 2</category></item><item><title>Create your own Designer or Introduction To Custom Designers - Part 3: SmartTags and Source Code.</title><link>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/03/02/create-your-own-designer-or-introduction-to-custom-designers-part-3-smarttags-and-source-code.aspx</link><pubDate>Sun, 02 Mar 2008 16:12:50 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:60604</guid><dc:creator>Yogev</dc:creator><slash:comments>3</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/yogev/rsscomments.aspx?PostID=60604</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/03/02/create-your-own-designer-or-introduction-to-custom-designers-part-3-smarttags-and-source-code.aspx#comments</comments><description>&lt;p&gt;As I promised I will supply the source code for the &lt;em&gt;Designer &lt;/em&gt;and I will explain about &lt;em&gt;SmartTags&lt;/em&gt;, &lt;em&gt;SmartTags&lt;/em&gt; enable us easier access to our control an extended to UI.&lt;/p&gt;  &lt;p&gt;So &lt;em&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/system.componentmodel.design.designeractionlistcollection(VS.80).aspx" target="_blank"&gt;SmartTags&lt;/a&gt;&lt;/em&gt; enable us to access designated operation to our control.&lt;/p&gt;  &lt;p&gt;How to create SmartTas:&lt;/p&gt;  &lt;p&gt;Step 1: &lt;/p&gt;  &lt;p&gt;In my previous session I have demonstrated how to create a &lt;em&gt;Custom&lt;/em&gt; &lt;em&gt;Designer&lt;/em&gt;, now all you have to do to add SmartTags to your control is to override the &lt;em&gt;ActionLists&lt;/em&gt; property of your &lt;em&gt;desginer&lt;/em&gt;.&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;overflow:scroll;width:675px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;height:208px;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;DesignerActionList&lt;/span&gt; m_DesignerActionList;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;DesignerActionListCollection&lt;/span&gt; m_ActionLists;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;override&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;DesignerActionListCollection&lt;/span&gt; ActionLists&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;{&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&amp;#160;&amp;#160;&amp;#160; get&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;if&lt;/span&gt;(m_ActionLists == &lt;span style="color:blue;"&gt;null&lt;/span&gt;)&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; m_ActionLists = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;DesignerActionListCollection&lt;/span&gt;();&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; m_DesignerActionList = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;MyDesignerActionList&lt;/span&gt;(&lt;span style="color:blue;"&gt;this&lt;/span&gt;.Control);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; m_ActionLists.Add(m_DesignerActionList);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;return&lt;/span&gt; m_ActionLists;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;}&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;As you may have notice I have created my own implementation of the &lt;a href="http://msdn2.microsoft.com/en-us/library/system.componentmodel.design.designeractionlist(VS.80).aspx" target="_blank"&gt;&lt;em&gt;DesignerActionList&lt;/em&gt;&lt;/a&gt; class, the new implementation contains the definition of SmartTags abilities exposed by my new DesignerActionList class.&lt;/p&gt;  &lt;p&gt;Step 2: Add abilities to your &lt;a href="http://msdn2.microsoft.com/en-us/library/system.componentmodel.design.designeractionlist(VS.80).aspx" target="_blank"&gt;&lt;em&gt;DesignerActionList&lt;/em&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;To add new SmartTags all you have to do is to override the &lt;em&gt;GetSortedActionItems &lt;/em&gt;method and add the Method to be Invoked when the SmartTag is invoked. By adding &lt;em&gt;DesignerActionItemCollection a &lt;a href="http://msdn2.microsoft.com/en-us/library/system.componentmodel.design.designeractionmethoditem.aspx" target="_blank"&gt;DesignerActionMethodItem&lt;/a&gt;&lt;/em&gt; we will Invoke a method.&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;overflow:scroll;width:660px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;height:130px;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;override&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;DesignerActionItemCollection&lt;/span&gt; GetSortedActionItems()&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;{&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:#2b91af;"&gt;DesignerActionItemCollection&lt;/span&gt; items = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;DesignerActionItemCollection&lt;/span&gt;();&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; items.Add(&lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;DesignerActionMethodItem&lt;/span&gt;(&lt;span style="color:blue;"&gt;this&lt;/span&gt;,&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:#a31515;"&gt;&amp;quot;ImageLocation&amp;quot;&lt;/span&gt;, &lt;span style="color:#a31515;"&gt;&amp;quot;ImageLocation&amp;quot;&lt;/span&gt;,&lt;span style="color:blue;"&gt;true&lt;/span&gt;));&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;return&lt;/span&gt; items;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;}&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Now when we will design our control we will be able to use SmartTags.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/CreateyourownDesignerorIntroduct.Sources_B1A9/designerVerb_2.jpg"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="128" alt="designerVerb" src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/CreateyourownDesignerorIntroduct.Sources_B1A9/designerVerb_thumb.jpg" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I have Included source code for our designer.&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://cid-f45b4ec764d6da98.skydrive.live.com/browse.aspx/Source%20Code?uc=1" target="_blank"&gt;SourceCode&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;That&amp;#39;s it. &lt;/p&gt;  &lt;p&gt;*njoy!&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=60604" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Winforms/default.aspx">Winforms</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Contols/default.aspx">Contols</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Designer/default.aspx">Designer</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/UserControl/default.aspx">UserControl</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/DesginerControl/default.aspx">DesginerControl</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Custom+Desginer/default.aspx">Custom Desginer</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/ExtendDesigner/default.aspx">ExtendDesigner</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/ComponentDesginer/default.aspx">ComponentDesginer</category></item><item><title>Create your own Designer or Introduction To Custom Designers - Part 2: UI, Glyphs</title><link>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/01/17/create-your-own-designer-or-introduction-to-custom-designers-part-2-ui-glyphs.aspx</link><pubDate>Thu, 17 Jan 2008 16:36:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:51005</guid><dc:creator>Yogev</dc:creator><slash:comments>1</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/yogev/rsscomments.aspx?PostID=51005</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/01/17/create-your-own-designer-or-introduction-to-custom-designers-part-2-ui-glyphs.aspx#comments</comments><description>&lt;p&gt;In my last post I have demonstrated how to create your own &lt;em&gt;Designer&lt;/em&gt;, in this post I will continue on demonstrating on how to create your own Designer.&lt;/p&gt;
&lt;p&gt;My goal in this series of posts is to explain how to create and extended Designers. For this reason I have created a sample. This plain sample is a &lt;em&gt;UserControl &lt;/em&gt;that contains an &lt;em&gt;PictureBox&lt;/em&gt; and a &lt;em&gt;Label. &lt;/em&gt;Using many of this controls can be a bit frustrating, since we can change the Image of the PictureBox without encapsulate the Image &lt;em&gt;Property. &lt;/em&gt;As I mention in my &lt;a href="http://blogs.microsoft.co.il/blogs/yogev/archive/2008/01/01/create-your-own-designer-or-introduction-to-custom-designers-part-1-designer.aspx" target="_blank"&gt;&lt;font color="#0000ff"&gt;last post&lt;/font&gt;&lt;/a&gt; we would like to avoid this. This is just a simple example of how to use and extend your Control Designer.&lt;/p&gt;
&lt;p&gt;This is how it looks:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/1_A08D/control101.jpg"&gt;&lt;img style="BORDER-RIGHT:0px;BORDER-TOP:0px;BORDER-LEFT:0px;BORDER-BOTTOM:0px;" height="173" alt="control101" src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/1_A08D/control101_thumb.jpg" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;The UI in your Designer is implemented by &lt;em&gt;Glyphs&lt;/em&gt;, each on of your &lt;em&gt;Glyphs&lt;/em&gt; is basically a UI access point that during designing you can use to manipulate your control with. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Step 1:&lt;/strong&gt; Create a &lt;em&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/system.windows.forms.design.behavior.glyph.aspx" target="_blank"&gt;Glyph&lt;/a&gt;&lt;/em&gt;, first you must inherit from the &lt;em&gt;Glyph&lt;/em&gt; class, our Implementation to the &lt;em&gt;Glyph&lt;/em&gt; should contains reference to the &lt;em&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/system.windows.forms.design.controldesigner.aspx" target="_blank"&gt;ControlDesigner&lt;/a&gt;&lt;/em&gt;, &lt;em&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/system.windows.forms.design.behavior.adorner.aspx" target="_blank"&gt;&lt;font color="#0000ff"&gt;Adorner&lt;/font&gt;&lt;/a&gt;&lt;/em&gt; and the various services. This will help our work in designing our Control. &lt;/p&gt;
&lt;div style="FONT-SIZE:10pt;BACKGROUND:white;COLOR:black;FONT-FAMILY:courier new;"&gt;
&lt;div style="PADDING-RIGHT:5px;PADDING-LEFT:5px;FONT-SIZE:11pt;BACKGROUND:white;PADDING-BOTTOM:5px;OVERFLOW:scroll;WIDTH:588px;COLOR:black;MAX-HEIGHT:350px;PADDING-TOP:5px;FONT-FAMILY:consolas;WHITE-SPACE:nowrap;HEIGHT:312px;"&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;class&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;PictureSelectionGlyph&lt;/span&gt; : &lt;span style="COLOR:#2b91af;"&gt;Glyph&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;{ &lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:green;"&gt;//References to services that we will need.&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;BehaviorService&lt;/span&gt; m_BehaviorService = &lt;span style="COLOR:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;IComponentChangeService&lt;/span&gt; m_ComponentChangeService = &lt;span style="COLOR:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;ISelectionService&lt;/span&gt; m_SelectionService = &lt;span style="COLOR:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:green;"&gt;//The designer reference&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;IDesigner&lt;/span&gt; m_ComponentDesigner = &lt;span style="COLOR:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:green;"&gt;//The adorner reference.&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;Adorner&lt;/span&gt; m_adorner = &lt;span style="COLOR:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:green;"&gt;//The control that is being designed.&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;Control&lt;/span&gt; m_relatedControl = &lt;span style="COLOR:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:green;"&gt;// This defines the bounds used for hit testing.&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;protected&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;Rectangle&lt;/span&gt; m_HitTestBoundsValue;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:green;"&gt;// This is the cursor returned if hit test is positive.&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;protected&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;Cursor&lt;/span&gt; hitTestCursor = &lt;span style="COLOR:#2b91af;"&gt;Cursors&lt;/span&gt;.Hand;&lt;/p&gt;&lt;/div&gt;
&lt;p style="MARGIN:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;All of these arguments are pass to the glyph by the designer so all the extra work we have to do is to keep reference to it.&lt;/p&gt;
&lt;div style="FONT-SIZE:10pt;BACKGROUND:white;COLOR:black;FONT-FAMILY:courier new;"&gt;
&lt;div style="PADDING-RIGHT:5px;PADDING-LEFT:5px;FONT-SIZE:11pt;BACKGROUND:white;PADDING-BOTTOM:5px;OVERFLOW:scroll;WIDTH:598px;COLOR:black;MAX-HEIGHT:350px;PADDING-TOP:5px;FONT-FAMILY:consolas;WHITE-SPACE:nowrap;HEIGHT:66px;"&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; PictureSelectionGlyph(&lt;span style="COLOR:#2b91af;"&gt;BehaviorService&lt;/span&gt; behaviorService, &lt;span style="COLOR:#2b91af;"&gt;IComponentChangeService&lt;/span&gt; changeService,&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:#2b91af;"&gt;ISelectionService&lt;/span&gt; selectionService,&lt;span style="COLOR:#2b91af;"&gt;IDesigner&lt;/span&gt; relatedDesigner,&lt;span style="COLOR:#2b91af;"&gt;Adorner&lt;/span&gt; anchorAdorner): &lt;span style="COLOR:blue;"&gt;base&lt;/span&gt;(&lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;PictureSelectorBehavior&lt;/span&gt;(relatedDesigner))&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;{&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Step 2:&lt;/strong&gt; Painting our Glyph. The glyph is a UI that is painted by GDI+, so we have to make sure that the glyph is painted in the right way (Location, Size...). First we must decide how we want our glyph to look like. Keep in mind that glyphs are only the access points and should not be to fancy that will shadow the control. this is how it should look like:&lt;/p&gt;
&lt;p&gt;You may have notice that we have to calculate the location and size of our Glyph. In my example I have painted the glyph in the middle of the control that been Designed.&lt;/p&gt;
&lt;div style="FONT-SIZE:10pt;BACKGROUND:white;COLOR:black;FONT-FAMILY:courier new;"&gt;
&lt;div style="PADDING-RIGHT:5px;PADDING-LEFT:5px;FONT-SIZE:11pt;BACKGROUND:white;PADDING-BOTTOM:5px;OVERFLOW:scroll;WIDTH:599px;COLOR:black;MAX-HEIGHT:350px;PADDING-TOP:5px;FONT-FAMILY:consolas;WHITE-SPACE:nowrap;HEIGHT:208px;"&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:green;"&gt;//This method renders the PictureSelectionGlyph as a filled rectangle,&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:green;"&gt;//in the center of the designed control. &lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;override&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;void&lt;/span&gt; Paint(&lt;span style="COLOR:#2b91af;"&gt;PaintEventArgs&lt;/span&gt; e)&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;{&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; using&lt;/span&gt; (&lt;span style="COLOR:#2b91af;"&gt;Brush&lt;/span&gt; b = &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;SolidBrush&lt;/span&gt;(&lt;span style="COLOR:#2b91af;"&gt;Color&lt;/span&gt;.DarkRed))&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:#2b91af;"&gt;Pen&lt;/span&gt; p = &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;Pen&lt;/span&gt;(b, 2f);&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.Graphics.DrawRectangle(p, Bounds);&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;using&lt;/span&gt; (&lt;span style="COLOR:#2b91af;"&gt;Brush&lt;/span&gt; fillBrush = &lt;span style="COLOR:blue;"&gt;new&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;LinearGradientBrush&lt;/span&gt;(&lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;.Bounds, &lt;span style="COLOR:#2b91af;"&gt;Color&lt;/span&gt;.DarkRed, &lt;span style="COLOR:#2b91af;"&gt;Color&lt;/span&gt;.Gold, 180f))&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; e.Graphics.FillRectangle(fillBrush, Bounds);&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;}&lt;/p&gt;&lt;/div&gt;
&lt;p style="MARGIN:0px;"&gt;&amp;nbsp;&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Step 3:&lt;/strong&gt; Assigning &lt;em&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/system.windows.forms.design.behavior.behavior.aspx" target="_blank"&gt;Behavior&lt;/a&gt;&lt;/em&gt; to our &lt;em&gt;Glyph&lt;/em&gt;. &lt;/p&gt;
&lt;p&gt;Great! now We have painted a glyph, what is next? &lt;em&gt;Behavior&lt;/em&gt;&amp;nbsp; is the class that responsible for handling and manipulating our Control.&lt;/p&gt;
&lt;p&gt;As you might have noticed in the &lt;em&gt;Glyph&lt;/em&gt; class &lt;em&gt;Constructor&lt;/em&gt; we have Created a new instance of &lt;em&gt;PictureSelectorBehavior, &lt;/em&gt;this class is the behavior class of the &lt;em&gt;Glyph&lt;/em&gt;. If Glyph is the looks then the Behavior is the Brains. &lt;/p&gt;
&lt;div style="PADDING-RIGHT:5px;PADDING-LEFT:5px;FONT-SIZE:11pt;BACKGROUND:white;PADDING-BOTTOM:5px;OVERFLOW:scroll;WIDTH:615px;COLOR:black;MAX-HEIGHT:350px;PADDING-TOP:5px;FONT-FAMILY:consolas;WHITE-SPACE:nowrap;HEIGHT:208px;"&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:green;"&gt;//This Behavior specifies mouse and keyboard handling when&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:green;"&gt;//Glyph is active. This happens when PictureSelectionGlyph.GetHitTest returns a non-null value.&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;internal&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;class&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;PictureSelectorBehavior&lt;/span&gt; : &lt;span style="COLOR:#2b91af;"&gt;Behavior&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;{&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;IDesigner&lt;/span&gt; m_relatedDesigner = &lt;span style="COLOR:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;Control&lt;/span&gt; m_relatedControl = &lt;span style="COLOR:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;private&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;OpenFileDialog&lt;/span&gt; m_openFileDialog;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;internal&lt;/span&gt; PictureSelectorBehavior(&lt;span style="COLOR:#2b91af;"&gt;IDesigner&lt;/span&gt; relatedDesigner)&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;.m_relatedDesigner = relatedDesigner;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;this&lt;/span&gt;.m_relatedControl = relatedDesigner.Component &lt;span style="COLOR:blue;"&gt;as&lt;/span&gt; &lt;span style="COLOR:#2b91af;"&gt;Control&lt;/span&gt;;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;Our behavior should inherits from &lt;a href="http://msdn2.microsoft.com/en-us/library/system.windows.forms.design.behavior.behavior.aspx" target="_blank"&gt;&lt;em&gt;Behavior&lt;/em&gt;&lt;/a&gt; and Initialize in &lt;em&gt;Glyph Constructor&lt;/em&gt; &lt;/p&gt;
&lt;p&gt;We would like to keep reference for our Designer, Control this will help us manipulate our Designed Control.&lt;/p&gt;
&lt;p&gt;All that&amp;#39;s left is to decide how our control react, in my case I had overridden the OnMouseDoubleClick:&lt;/p&gt;
&lt;div style="PADDING-RIGHT:5px;PADDING-LEFT:5px;FONT-SIZE:11pt;BACKGROUND:white;PADDING-BOTTOM:5px;OVERFLOW:scroll;WIDTH:625px;COLOR:black;MAX-HEIGHT:350px;PADDING-TOP:5px;FONT-FAMILY:consolas;WHITE-SPACE:nowrap;HEIGHT:260px;"&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;public&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;override&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;bool&lt;/span&gt; OnMouseDoubleClick(&lt;span style="COLOR:#2b91af;"&gt;Glyph&lt;/span&gt; g, &lt;span style="COLOR:#2b91af;"&gt;MouseButtons&lt;/span&gt; button, &lt;span style="COLOR:#2b91af;"&gt;Point&lt;/span&gt; mouseLoc)&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;{&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;if&lt;/span&gt; (button != &lt;span style="COLOR:#2b91af;"&gt;MouseButtons&lt;/span&gt;.Left)&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&lt;font color="#000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/font&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;false&lt;/span&gt;;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:#2b91af;"&gt;PropertyDescriptor&lt;/span&gt; bounds = &lt;span style="COLOR:#2b91af;"&gt;TypeDescriptor&lt;/span&gt;.GetProperties(g)[&lt;span style="COLOR:#a31515;"&gt;&amp;quot;Bounds&amp;quot;&lt;/span&gt;];&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;if&lt;/span&gt; (((&lt;span style="COLOR:#2b91af;"&gt;Rectangle&lt;/span&gt;)bounds.GetValue(g)).Contains(mouseLoc))&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;if&lt;/span&gt;(BehaviorOenFileDialog.ShowDialog(m_relatedControl)&amp;nbsp; == &lt;span style="COLOR:#2b91af;"&gt;DialogResult&lt;/span&gt;.OK)&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:#2b91af;"&gt;PropertyDescriptor&lt;/span&gt; imageLocationPropertyDescriptor = &lt;span style="COLOR:#2b91af;"&gt;TypeDescriptor&lt;/span&gt;.GetProperties(m_relatedControl)[&lt;span style="COLOR:#a31515;"&gt;&amp;quot;ImageLocation&amp;quot;&lt;/span&gt;];&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; imageLocationPropertyDescriptor.SetValue(m_relatedControl, BehaviorOenFileDialog.FileName);&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;true&lt;/span&gt;;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&amp;nbsp;&amp;nbsp; &lt;span style="COLOR:blue;"&gt;return&lt;/span&gt; &lt;span style="COLOR:blue;"&gt;base&lt;/span&gt;.OnMouseDown(g, button, mouseLoc);&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;}&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;In the OnMouseDoubleClick we check that the event occurs on the &lt;em&gt;Glyph&lt;/em&gt; bounds if so we perform the desire action, In my case I open a dialog that will ask us to choose the physical location of the &lt;em&gt;Image&lt;/em&gt; In our &lt;em&gt;PictureBox&lt;/em&gt;&amp;nbsp; - Sweet!. &lt;/p&gt;
&lt;p&gt;Note: If you want that the Image will be saved in the Resources of our project use &lt;em&gt;PropertyDescriptor&lt;/em&gt; to set the new value of the &lt;em&gt;Image&lt;/em&gt; &lt;em&gt;property&lt;/em&gt; of &lt;em&gt;PictureBox&lt;/em&gt;. &lt;/p&gt;
&lt;p&gt;This is how it looks in Design mode:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/1_A08D/designer101.jpg"&gt;&lt;img style="BORDER-TOP-WIDTH:0px;BORDER-LEFT-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-RIGHT-WIDTH:0px;" height="186" alt="designer101" src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/1_A08D/designer101_thumb.jpg" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;DoubleClick to open the dialog and select a new &lt;em&gt;Image.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;* Source Code will be available soon.&lt;/p&gt;
&lt;p&gt;Next post will feature new abilities such as &lt;em&gt;Verbs&lt;/em&gt; and &lt;em&gt;SmartTags.&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;*njoy!&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=51005" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Winforms/default.aspx">Winforms</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Contols/default.aspx">Contols</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Designer/default.aspx">Designer</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/UserControl/default.aspx">UserControl</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/DesginerControl/default.aspx">DesginerControl</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Custom+Desginer/default.aspx">Custom Desginer</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/ComponentDesginer/default.aspx">ComponentDesginer</category></item><item><title>Create your own Designer or Introduction To Custom Designers - Part 1: Designer</title><link>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/01/01/create-your-own-designer-or-introduction-to-custom-designers-part-1-designer.aspx</link><pubDate>Wed, 02 Jan 2008 00:40:23 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:47437</guid><dc:creator>Yogev</dc:creator><slash:comments>6</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/yogev/rsscomments.aspx?PostID=47437</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/yogev/archive/2008/01/01/create-your-own-designer-or-introduction-to-custom-designers-part-1-designer.aspx#comments</comments><description>&lt;p&gt;Working with &lt;em&gt;Winforms&lt;/em&gt;&amp;#160;&lt;em&gt;Designer&lt;/em&gt; and &lt;em&gt;UserControls&lt;/em&gt; has always been a bit complicated, we could never get an easy access to the &lt;em&gt;UserControls&lt;/em&gt; unique properties when designing our Control. We only had one option to access Properties via the &lt;em&gt;Properties Window&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;To understand better how Designers works please visit &lt;font color="#160afe"&gt;&lt;/font&gt;&lt;a href="http://msdn.microsoft.com/msdnmag/issues/06/03/DesignerHosting/" target="_blank"&gt;&lt;font color="#160afe"&gt;&lt;em&gt;The Perfect Host&lt;/em&gt;&lt;/font&gt;&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;In this post I will demonstrate how we can easily create and adapt a Custom Designer for a New &lt;em&gt;UserControl&lt;/em&gt;.&amp;#160; &lt;/p&gt;  &lt;p&gt;This figure demonstrate how a &lt;em&gt;Button&lt;/em&gt; is Contained by a &lt;em&gt;Form&lt;/em&gt; At &lt;em&gt;RunTime&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;&lt;img src="http://msdn.microsoft.com/msdnmag/issues/06/03/DesignerHosting/fig01.gif" alt="" /&gt; &lt;/p&gt;  &lt;p&gt;When we are working In &lt;em&gt;DesignTime&lt;/em&gt; each control we design has an &lt;em&gt;Designer&lt;/em&gt; &lt;em&gt;Attribute&lt;/em&gt;&amp;#160; attached to it.&lt;/p&gt;  &lt;p&gt;&lt;img src="http://msdn.microsoft.com/msdnmag/issues/06/03/DesignerHosting/fig02.gif" alt="" /&gt; &lt;/p&gt;  &lt;p&gt;For example this is how a &lt;em&gt;Button&lt;/em&gt; Designer attribute is defined:&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;overflow:scroll;width:502px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;height:65px;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;[&lt;span style="color:#2b91af;"&gt;Designer&lt;/span&gt;(&lt;span style="color:#a31515;"&gt;&amp;quot;System.Windows.Forms.Design.ButtonBaseDesigner, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a&amp;quot;&lt;/span&gt;), SRDescription(&lt;span style="color:#a31515;"&gt;&amp;quot;DescriptionButton&amp;quot;&lt;/span&gt;), ClassInterface(ClassInterfaceType.AutoDispatch), ComVisible(&lt;span style="color:blue;"&gt;true&lt;/span&gt;)]&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;class&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Button&lt;/span&gt; : &lt;span style="color:#2b91af;"&gt;ButtonBase&lt;/span&gt;, &lt;span style="color:#2b91af;"&gt;IButtonControl&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;{&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;In this example I have created a &lt;em&gt;UserControl &lt;/em&gt;that contains a &lt;em&gt;PictureBox. &lt;/em&gt;I may use this &lt;em&gt;Control&lt;/em&gt; in many different &lt;em&gt;Forms&lt;/em&gt;&amp;#160; or other &lt;em&gt;UserControl. &lt;/em&gt;The main issue with my &lt;em&gt;UserControl&lt;/em&gt; is that to access the &lt;em&gt;PictureBox&lt;/em&gt; and define in each &lt;em&gt;UserControl&lt;/em&gt; a different &lt;em&gt;Image&lt;/em&gt; is a bit tricky. I can encapsulate the Image property from the &lt;em&gt;PictureBox&lt;/em&gt; and use it as I uses my &lt;em&gt;UserContol&lt;/em&gt; using the &lt;em&gt;Properties Window&lt;/em&gt;. &lt;/p&gt;  &lt;p&gt;The following example demonstrate how to access the &lt;em&gt;Image&lt;/em&gt; Property from the &lt;em&gt;PictureBox.&lt;/em&gt;&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;overflow:scroll;width:450px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;class&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;PictureDemoControl&lt;/span&gt; : &lt;span style="color:#2b91af;"&gt;UserControl&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;{&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;PictureBox&lt;/span&gt; pictureBox1;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Image&lt;/span&gt; PictureImage&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;get&lt;/span&gt; { &lt;span style="color:blue;"&gt;return&lt;/span&gt; pictureBox1.Image; }&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;set&lt;/span&gt; { pictureBox1.Image = &lt;span style="color:blue;"&gt;value&lt;font color="#000000"&gt;;&lt;/font&gt;&lt;/span&gt;}&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;This is how we can edit the Image property using &lt;em&gt;Properties Window:&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/CreateyourownDesignerorIntroductionToCus_11574/fig04_2.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="209" alt="fig04" src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/CreateyourownDesignerorIntroductionToCus_11574/fig04_thumb.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;This solution is nice but does not enable access to the Image property using anything other then &lt;em&gt;Properties&lt;/em&gt;&amp;#160;&lt;em&gt;windows&lt;/em&gt; in &lt;em&gt;Design-Time, &lt;/em&gt;beside that now the Image Property is accessible to all.&lt;/p&gt;  &lt;p&gt;To avoid this we can create and define a new Designer for the user control, this designer will enable easy access in &lt;em&gt;Design-Time&lt;/em&gt;. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Step 1&lt;/strong&gt;: Create your own designer.&lt;/p&gt;  &lt;p&gt;Your Designer should &lt;em&gt;Inherit&lt;/em&gt; from &lt;em&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/system.windows.forms.design.controldesigner.aspx" target="_blank"&gt;&lt;font color="#0000ff"&gt;ControlDesigner&lt;/font&gt;&lt;/a&gt;&lt;/em&gt; this will let you extend the basic Designer Behavior. Your custom &lt;em&gt;ControlDesigner&lt;/em&gt;&amp;#160; will contain at least one &lt;em&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/system.windows.forms.design.behavior.adorner.aspx" target="_blank"&gt;&lt;font color="#0000ff"&gt;Adorner&lt;/font&gt;&lt;/a&gt;&lt;/em&gt;, the designer should also initialize this services: &lt;a href="http://msdn2.microsoft.com/en-us/library/system.componentmodel.design.icomponentchangeservice.aspx" target="_blank"&gt;&lt;font color="#0000ff"&gt;&lt;em&gt;IComponentChangeService&lt;/em&gt;&lt;/font&gt;&lt;/a&gt;, &lt;a href="http://msdn2.microsoft.com/en-us/library/system.componentmodel.design.iselectionservice.aspx" target="_blank"&gt;&lt;font color="#0000ff"&gt;&lt;em&gt;ISelectionService&lt;/em&gt;&lt;/font&gt;&lt;/a&gt;, &lt;a href="http://msdn2.microsoft.com/en-us/library/system.windows.forms.design.behavior.behaviorservice.aspx" target="_blank"&gt;&lt;font color="#0000ff"&gt;&lt;em&gt;BehaviorService&lt;/em&gt;&lt;/font&gt;&lt;/a&gt;. All this services are essential and will provide us access to the Designed Control.&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;The Designer also contains &lt;em&gt;&lt;a href="http://msdn2.microsoft.com/en-us/library/system.windows.forms.design.behavior.glyph.aspx" target="_blank"&gt;&lt;font color="#0000ff"&gt;Glyphs&lt;/font&gt;&lt;/a&gt;&lt;/em&gt;, Glyph is the UI that will be painted when your component is selected. Using the glyph you can basically manipulate and design your &lt;em&gt;Control&lt;/em&gt; in &lt;em&gt;Design-Time.&lt;/em&gt; I strongly recommend that you will not use &lt;em&gt;Adorner&lt;/em&gt; for each one of your &lt;em&gt;Glyphs&lt;/em&gt; - that may be too costly. Try dividing your &lt;em&gt;Glyphs&lt;/em&gt; into logical groups and then assign each group with a different &lt;em&gt;Adorner&lt;/em&gt; .&lt;/p&gt;  &lt;p&gt;This is how your Designer Class should look like:&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;overflow:scroll;width:525px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;height:360px;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; [System.Security.Permissions.&lt;span style="color:#2b91af;"&gt;PermissionSet&lt;/span&gt;(System.Security.Permissions.&lt;span style="color:#2b91af;"&gt;SecurityAction&lt;/span&gt;.Demand, Name = &lt;span style="color:#a31515;"&gt;&amp;quot;FullTrust&amp;quot;&lt;/span&gt;)]&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;internal&lt;/span&gt; &lt;span style="color:blue;"&gt;class&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;MyPictureDesigner&lt;/span&gt; : &lt;span style="color:#2b91af;"&gt;ControlDesigner&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:green;"&gt;// This adorner holds the glyphs&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Adorner&lt;/span&gt; m_pictureSelectorAdorner = &lt;span style="color:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:green;"&gt;// References to designer services&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;IComponentChangeService&lt;/span&gt; m_componentChangeService = &lt;span style="color:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;ISelectionService&lt;/span&gt; m_selectionChangeService = &lt;span style="color:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;BehaviorService&lt;/span&gt; m_behaviorService = &lt;span style="color:blue;"&gt;null&lt;/span&gt;;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; InitializeServices()&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:green;"&gt;// Reference to IComponentChangeService.&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;this&lt;/span&gt;.m_componentChangeService = GetService(&lt;span style="color:blue;"&gt;typeof&lt;/span&gt;(&lt;span style="color:#2b91af;"&gt;IComponentChangeService&lt;/span&gt;)) &lt;span style="color:blue;"&gt;as&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;IComponentChangeService&lt;/span&gt;;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:green;"&gt;//Reference&amp;#160; to ISelectionService.&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;this&lt;/span&gt;.m_selectionChangeService = GetService(&lt;span style="color:blue;"&gt;typeof&lt;/span&gt;(&lt;span style="color:#2b91af;"&gt;ISelectionService&lt;/span&gt;)) &lt;span style="color:blue;"&gt;as&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;ISelectionService&lt;/span&gt;;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:green;"&gt;//Reference&amp;#160; to BehaviorService.&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;this&lt;/span&gt;.m_behaviorService = GetService(&lt;span style="color:blue;"&gt;typeof&lt;/span&gt;(&lt;span style="color:#2b91af;"&gt;BehaviorService&lt;/span&gt;)) &lt;span style="color:blue;"&gt;as&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;BehaviorService&lt;/span&gt;;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;this&lt;/span&gt;.m_pictureSelectorAdorner = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Adorner&lt;/span&gt;();&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;this&lt;/span&gt;.m_behaviorService.Adorners.Add(&lt;span style="color:blue;"&gt;this&lt;/span&gt;.m_pictureSelectorAdorner);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;override&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; Initialize(&lt;span style="color:#2b91af;"&gt;IComponent&lt;/span&gt; component)&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:blue;"&gt;base&lt;/span&gt;.Initialize(component);&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; InitializeServices();&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;span style="color:green;"&gt;/*this is where we will Assign the Adorner with Glyph*/&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;More about &lt;em&gt;Glyphs&lt;/em&gt; and &lt;em&gt;Behavior&lt;/em&gt; at Part 2. &lt;/p&gt;  &lt;p&gt;Happy New Year!&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=47437" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Winforms/default.aspx">Winforms</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Contols/default.aspx">Contols</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Designer/default.aspx">Designer</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/UserControl/default.aspx">UserControl</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/DesginerControl/default.aspx">DesginerControl</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Custom+Desginer/default.aspx">Custom Desginer</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/ComponentDesginer/default.aspx">ComponentDesginer</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/ExtendedDesigner/default.aspx">ExtendedDesigner</category></item><item><title>WPF Tip: Slider Indication</title><link>http://blogs.microsoft.co.il/blogs/yogev/archive/2007/12/09/wpf-tip-slider-indication.aspx</link><pubDate>Sun, 09 Dec 2007 15:17:39 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:40860</guid><dc:creator>Yogev</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/yogev/rsscomments.aspx?PostID=40860</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/yogev/archive/2007/12/09/wpf-tip-slider-indication.aspx#comments</comments><description>&lt;p&gt;In &lt;a href="http://blogs.microsoft.co.il/blogs/yogev/archive/2007/12/04/wpf-tip-create-your-own-simple-style.aspx"&gt;&lt;font color="#0000ff"&gt;&lt;em&gt;my last post&lt;/em&gt;&lt;/font&gt;&lt;/a&gt; I have demonstrated how to create your own style into the &lt;em&gt;Simple Style, &lt;/em&gt;In this post I will show how to provide your newly created &lt;em&gt;Slider &lt;/em&gt;with a unique status Indication.&lt;/p&gt;  &lt;p&gt;Last time we created our own style using &lt;em&gt;Expression Design&lt;/em&gt; and applying the pre-fabricated design into the &lt;em&gt;Simple Style&lt;/em&gt; . As you can see there are two styles relevant to Increase Decrease behavior: &lt;em&gt;SimpleScrollRepeatButtonStyle.&lt;/em&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;width:450px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track&lt;/span&gt;&lt;span style="color:red;"&gt; Grid.Row&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;1&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:red;"&gt;Name&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;PART_Track&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&lt;font color="#a31515"&gt;&amp;#160; &lt;/font&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.Thumb&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&lt;font color="#a31515"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/font&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Thumb&lt;/span&gt;&lt;span style="color:red;"&gt; Style&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="color:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="color:red;"&gt; SimpleSliderThumb&lt;/span&gt;&lt;span style="color:blue;"&gt;}&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.Thumb&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&amp;#160; &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.IncreaseRepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RepeatButton&lt;/span&gt;&lt;span style="color:red;"&gt; Style&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="color:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="color:red;"&gt; SimpleScrollRepeatButtonStyle&lt;/span&gt;&lt;span style="color:blue;"&gt;}&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Command&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Slider.IncreaseLarge&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.IncreaseRepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.DecreaseRepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RepeatButton&lt;/span&gt;&lt;span style="color:red;"&gt; Style&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="color:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="color:red;"&gt; SimpleScrollRepeatButtonStyle&lt;/span&gt;&lt;span style="color:blue;"&gt;}&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Command&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Slider.DecreaseLarge&amp;quot;&lt;/span&gt;&lt;span style="color:blue;"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&amp;#160; &amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.DecreaseRepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Step 1: Rename the style to differentiate theme from one another:&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;width:450px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track&lt;/span&gt;&lt;span style="color:red;"&gt; Grid.Row&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;1&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:red;"&gt;Name&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;PART_Track&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&lt;font color="#a31515"&gt;&amp;#160; &lt;/font&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.Thumb&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&lt;font color="#a31515"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/font&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Thumb&lt;/span&gt;&lt;span style="color:red;"&gt; Style&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="color:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="color:red;"&gt; SimpleSliderThumb&lt;/span&gt;&lt;span style="color:blue;"&gt;}&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.Thumb&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&amp;#160; &amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.IncreaseRepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RepeatButton&lt;/span&gt;&lt;span style="color:red;"&gt; Style&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="color:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="color:red;"&gt; SimpleScrollRepeatButtonStyleIncrease&lt;/span&gt;&lt;span style="color:blue;"&gt;}&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Command&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Slider.IncreaseLarge&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.IncreaseRepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.DecreaseRepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RepeatButton&lt;/span&gt;&lt;span style="color:red;"&gt; Style&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="color:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="color:red;"&gt; SimpleScrollRepeatButtonStyleDeCrease&lt;/span&gt;&lt;span style="color:blue;"&gt;}&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Command&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Slider.DecreaseLarge&amp;quot;&lt;/span&gt;&lt;span style="color:blue;"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&amp;#160; &amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track.DecreaseRepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Track&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Step 2: Create the the two different &lt;em&gt;Styles &lt;/em&gt;(remember to keep theme different).&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;div style="padding-right:5px;padding-left:5px;font-size:11pt;background:white;padding-bottom:5px;overflow:scroll;width:666px;color:black;max-height:350px;padding-top:5px;font-family:consolas;white-space:nowrap;height:360px;"&gt;   &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Style&lt;/span&gt;&lt;span style="color:red;"&gt; x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:red;"&gt;Key&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;SimpleScrollRepeatButtonStyleIncrease&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; TargetType&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="color:#a31515;"&gt;x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Type&lt;/span&gt;&lt;span style="color:red;"&gt; RepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;}&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:red;"&gt; Property&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Background&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Value&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Transparent&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:red;"&gt; Property&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;BorderBrush&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Value&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Transparent&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:red;"&gt; Property&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;IsTabStop&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Value&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;false&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:red;"&gt; Property&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Focusable&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Value&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;false&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:red;"&gt; Property&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Template&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter.Value&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;ControlTemplate&lt;/span&gt;&lt;span style="color:red;"&gt; TargetType&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="color:#a31515;"&gt;x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Type&lt;/span&gt;&lt;span style="color:red;"&gt; RepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;}&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Grid&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Path&lt;/span&gt;&lt;span style="color:red;"&gt; x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:red;"&gt;Name&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;DownloadProgressSlider&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Width&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;736&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Height&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;6.42206&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Canvas.Left&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;25.6802&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Canvas.Top&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;498.937&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Stretch&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Fill&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Data&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;F1 M 25.6802,498.937L 761.68,498.937L 761.68,505.359L 25.6802,505.359L 25.6802,498.937 Z &amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Path.Fill&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RadialGradientBrush&lt;/span&gt;&lt;span style="color:red;"&gt; RadiusX&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;0.5&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; RadiusY&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;57.3025&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Center&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;0.5,0.5&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; GradientOrigin&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;0.5,0.5&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RadialGradientBrush.RelativeTransform&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;TransformGroup&lt;/span&gt;&lt;span style="color:blue;"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RadialGradientBrush.RelativeTransform&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;GradientStop&lt;/span&gt;&lt;span style="color:red;"&gt; Color&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;#FFFFFFFF&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Offset&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;0&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;GradientStop&lt;/span&gt;&lt;span style="color:red;"&gt; Color&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;#FF77E1FE&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Offset&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;0.429688&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;GradientStop&lt;/span&gt;&lt;span style="color:red;"&gt; Color&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;#FF0027C4&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Offset&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;1&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RadialGradientBrush&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Path.Fill&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Path&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Grid&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;ControlTemplate&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter.Value&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Style&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&amp;#160;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Style&lt;/span&gt;&lt;span style="color:red;"&gt; x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:red;"&gt;Key&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;SimpleScrollRepeatButtonStyleDecrease&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; TargetType&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="color:#a31515;"&gt;x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Type&lt;/span&gt;&lt;span style="color:red;"&gt; RepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;}&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:red;"&gt; Property&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Background&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Value&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Transparent&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:red;"&gt; Property&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;BorderBrush&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Value&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Transparent&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:red;"&gt; Property&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;IsTabStop&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Value&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;false&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:red;"&gt; Property&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Focusable&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Value&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;false&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:red;"&gt; Property&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Template&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter.Value&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;ControlTemplate&lt;/span&gt;&lt;span style="color:red;"&gt; TargetType&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="color:#a31515;"&gt;x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Type&lt;/span&gt;&lt;span style="color:red;"&gt; RepeatButton&lt;/span&gt;&lt;span style="color:blue;"&gt;}&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Grid&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Path&lt;/span&gt;&lt;span style="color:red;"&gt; x&lt;/span&gt;&lt;span style="color:blue;"&gt;:&lt;/span&gt;&lt;span style="color:red;"&gt;Name&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;DownloadProgressSlider&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Width&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;736&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Height&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;6.42206&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Canvas.Left&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;25.6802&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Canvas.Top&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;498.937&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Stretch&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Fill&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Data&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;F1 M 25.6802,498.937L 761.68,498.937L 761.68,505.359L 25.6802,505.359L 25.6802,498.937 Z &amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Path.Fill&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RadialGradientBrush&lt;/span&gt;&lt;span style="color:red;"&gt; RadiusX&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;0.5&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; RadiusY&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;57.3025&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Center&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;0.5,0.5&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; GradientOrigin&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;0.5,0.5&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RadialGradientBrush.RelativeTransform&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;TransformGroup&lt;/span&gt;&lt;span style="color:blue;"&gt;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RadialGradientBrush.RelativeTransform&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;GradientStop&lt;/span&gt;&lt;span style="color:red;"&gt; Color&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Transparent&amp;quot;&lt;/span&gt;&lt;span style="color:red;"&gt; Offset&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;0&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#a31515;"&gt;GradientStop&lt;/span&gt;&lt;span style="color:red;"&gt; Color&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;Transparent&amp;quot;&lt;/span&gt; &lt;span style="color:red;"&gt;Offset&lt;/span&gt;&lt;span style="color:blue;"&gt;=&amp;quot;1&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;RadialGradientBrush&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Path.Fill&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Path&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Grid&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;ControlTemplate&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter.Value&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;    &lt;p style="padding-right:0px;padding-left:0px;font-size:8pt;background:none transparent scroll repeat 0% 0%;padding-bottom:0px;margin:0px;padding-top:0px;"&gt;&lt;span style="color:#a31515;"&gt;&amp;#160;&amp;#160;&amp;#160; &lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#a31515;"&gt;Style&lt;/span&gt;&lt;span style="color:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt; &lt;/div&gt;  &lt;p&gt;Instead of looking like this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/WPFTipSliderIndication_88D8/simplesplider_2.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="29" alt="simplesplider" src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/WPFTipSliderIndication_88D8/simplesplider_thumb.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Now your Slider should look something like this:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/WPFTipSliderIndication_88D8/VistaSlider_2.png"&gt;&lt;img style="border-top-width:0px;border-left-width:0px;border-bottom-width:0px;border-right-width:0px;" height="34" alt="VistaSlider" src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/WPFTipSliderIndication_88D8/VistaSlider_thumb.png" width="244" border="0" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Now we can tell the progress on our slider.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Enjoy!&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=40860" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/XAML/default.aspx">XAML</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Expression+Blend/default.aspx">Expression Blend</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Resources/default.aspx">Resources</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Style/default.aspx">Style</category></item><item><title>WPF Tip: Create your own unique style</title><link>http://blogs.microsoft.co.il/blogs/yogev/archive/2007/12/04/wpf-tip-create-your-own-simple-style.aspx</link><pubDate>Tue, 04 Dec 2007 21:33:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:39317</guid><dc:creator>Yogev</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/yogev/rsscomments.aspx?PostID=39317</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/yogev/archive/2007/12/04/wpf-tip-create-your-own-simple-style.aspx#comments</comments><description>&lt;p align="left"&gt;When developing a new UserControls you usually would like to enable your own custom style, I found the following way very useful.&lt;/p&gt;
&lt;p align="left"&gt;This example shows you how to create a Slider: &lt;/p&gt;
&lt;p align="left"&gt;I used &lt;em&gt;Microsoft Expression Design&lt;/em&gt; to create my own thumb for a Slider control.&lt;/p&gt;
&lt;p align="left"&gt;After you had finished drawing your new Thumb, export the XAML using the &lt;em&gt;Microsoft Expression Design.&lt;/em&gt; &lt;/p&gt;
&lt;p align="left"&gt;Export using the following way:&lt;/p&gt;
&lt;p align="left"&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/Implementingcustomstyle_C182/exportXAML_2.png"&gt;&lt;img style="BORDER-TOP-WIDTH:0px;BORDER-LEFT-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-RIGHT-WIDTH:0px;" height="288" alt="exportXAML" src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/Implementingcustomstyle_C182/exportXAML_thumb.png" width="383" border="0" /&gt;&lt;/a&gt;&amp;nbsp; &lt;/p&gt;
&lt;p align="left"&gt;Select &lt;em&gt;&lt;strong&gt;Resource dictionary&lt;/strong&gt;&lt;/em&gt;, in the Group By select &lt;em&gt;&lt;strong&gt;Layers&lt;/strong&gt;&lt;/em&gt; this will export the Drawing Created by you into the XAML and will differentiate elements in the drawing by Layers. - Now you can use the drawing as a &lt;em&gt;ResourceDictionary&lt;/em&gt;&amp;nbsp;&lt;/p&gt;
&lt;p align="left"&gt;If you like to edit you drawing in &lt;em&gt;Microsoft Expression Blend&lt;/em&gt; select the export to &lt;em&gt;&lt;strong&gt;Canvas&lt;/strong&gt;&lt;/em&gt;, select &lt;em&gt;Export editable TextBlocks&lt;/em&gt; if your drawing contains Text. &lt;/p&gt;
&lt;p align="left"&gt;1. Create your own &lt;em&gt;ResourceDictionary&lt;/em&gt; and copy your XAML into it. &lt;/p&gt;
&lt;p align="left"&gt;2. Copy the simple style User Control XAML into your &lt;em&gt;ResourceDictionary&lt;/em&gt;. This is how it should look like: (I am only replacing the Thumb in the slider)&lt;/p&gt;&lt;span style="FONT-SIZE:11pt;COLOR:blue;FONT-FAMILY:consolas;mso-no-proof:yes;"&gt;
&lt;div dir="ltr" style="PADDING-RIGHT:5px;PADDING-LEFT:5px;FONT-SIZE:11pt;BACKGROUND:white;PADDING-BOTTOM:5px;WIDTH:450px;COLOR:black;MAX-HEIGHT:350px;PADDING-TOP:5px;FONT-FAMILY:consolas;WHITE-SPACE:nowrap;"&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Track.Thumb&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Thumb&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Style&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="COLOR:red;"&gt; SimpleSliderThumb&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Track.Thumb&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:consolas;mso-ansi-language:en;"&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:consolas;mso-ansi-language:en;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:consolas;mso-ansi-language:en;"&gt;&lt;span style="FONT-SIZE:8pt;COLOR:green;FONT-FAMILY:consolas;mso-no-proof:yes;"&gt;&lt;span style="FONT-SIZE:10pt;COLOR:green;FONT-FAMILY:consolas;mso-no-proof:yes;"&gt;&lt;font face="Arial" color="#000000"&gt;&lt;/font&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:11pt;COLOR:green;FONT-FAMILY:consolas;"&gt;&lt;span style="FONT-SIZE:11pt;COLOR:green;FONT-FAMILY:consolas;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE:10pt;FONT-FAMILY:consolas;mso-ansi-language:en;"&gt;&lt;span style="FONT-SIZE:8pt;COLOR:green;FONT-FAMILY:consolas;mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;/span&gt;
&lt;div style="PADDING-RIGHT:5px;PADDING-LEFT:5px;FONT-SIZE:11pt;BACKGROUND:white;PADDING-BOTTOM:5px;WIDTH:768px;COLOR:black;MAX-HEIGHT:350px;PADDING-TOP:5px;FONT-FAMILY:consolas;WHITE-SPACE:nowrap;HEIGHT:337px;"&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:green;"&gt;&amp;lt;!--Simple Simple SliderThumb - The Thumb is the draggable part of a Slider--&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Style&lt;/span&gt;&lt;span style="COLOR:red;"&gt; x&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;:&lt;/span&gt;&lt;span style="COLOR:red;"&gt;Key&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;SimpleSliderThumb&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; d&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;:&lt;/span&gt;&lt;span style="COLOR:red;"&gt;IsControlPart&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;True&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; TargetType&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;x&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;:&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Type&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Thumb&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;SnapsToDevicePixels&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;true&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Height&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;14&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Width&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;14&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Template&amp;quot;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Setter.Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ControlTemplate&lt;/span&gt;&lt;span style="COLOR:red;"&gt; TargetType&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;x&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;:&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Type&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Thumb&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Grid&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Ellipse&lt;/span&gt;&lt;span style="COLOR:red;"&gt; x&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;:&lt;/span&gt;&lt;span style="COLOR:red;"&gt;Name&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Ellipse&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Fill&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="COLOR:red;"&gt; NormalBrush&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:red;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Stroke&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="COLOR:red;"&gt; &lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="COLOR:red;"&gt;NormalBorderBrush&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot; &lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="COLOR:red;"&gt;StrokeThickness&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;1&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Grid&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ControlTemplate.Triggers&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Trigger&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;IsMouseOver&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;True&amp;quot;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Fill&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="COLOR:red;"&gt; MouseOverBrush&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:red;"&gt;TargetName&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Ellipse&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Trigger&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Trigger&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;IsEnabled&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;false&amp;quot;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Fill&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;&lt;/span&gt;&lt;/strong&gt;&lt;strong&gt;&lt;span style="COLOR:blue;"&gt;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="COLOR:red;"&gt; DisabledBackgroundBrush&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:red;"&gt;TargetName&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Ellipse&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Trigger&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ControlTemplate.Triggers&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ControlTemplate&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Setter.Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;strong&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Style&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;3. Now take your own custom style and replace the style relevant. &lt;/p&gt;
&lt;div style="PADDING-RIGHT:5px;PADDING-LEFT:5px;FONT-SIZE:11pt;BACKGROUND:white;PADDING-BOTTOM:5px;WIDTH:450px;COLOR:black;MAX-HEIGHT:350px;PADDING-TOP:5px;FONT-FAMILY:consolas;WHITE-SPACE:nowrap;"&gt;
&lt;div style="PADDING-RIGHT:5px;PADDING-LEFT:5px;FONT-SIZE:11pt;BACKGROUND:white;PADDING-BOTTOM:5px;WIDTH:450px;COLOR:black;MAX-HEIGHT:350px;PADDING-TOP:5px;FONT-FAMILY:consolas;WHITE-SPACE:nowrap;"&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;RadialGradientBrush&lt;/span&gt;&lt;span style="COLOR:red;"&gt; x&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;:&lt;/span&gt;&lt;span style="COLOR:red;"&gt;Key&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Path1Brush&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; RadiusX&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.684617&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; RadiusY&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.684615&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:red;"&gt;Center&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.492308,1.16154&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt;GradientOrigin&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.492308,1.16154&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;RadialGradientBrush.RelativeTransform&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;TransformGroup&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;RotateTransform&lt;/span&gt;&lt;span style="COLOR:red;"&gt; CenterX&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.492308&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; CenterY&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;1.16154&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Angle&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;-90&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;TransformGroup&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;RadialGradientBrush.RelativeTransform&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;GradientStop&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Color&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;#FFFF1313&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Offset&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;GradientStop&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Color&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;#FF9B4444&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Offset&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.429688&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;GradientStop&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Color&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;#FFF08787&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Offset&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;1&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;RadialGradientBrush&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;RadialGradientBrush&lt;/span&gt;&lt;span style="COLOR:red;"&gt; x&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;:&lt;/span&gt;&lt;span style="COLOR:red;"&gt;Key&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Path2Brush&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; RadiusX&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.874381&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; RadiusY&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.488538&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:red;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Center&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.4988,0.953051&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; GradientOrigin&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.4988,0.953051&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;RadialGradientBrush.RelativeTransform&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;TransformGroup&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;RotateTransform&lt;/span&gt;&lt;span style="COLOR:red;"&gt; CenterX&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.4988&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; CenterY&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.953051&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Angle&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;-90&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;TransformGroup&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;RadialGradientBrush.RelativeTransform&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;GradientStop&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Color&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;#00FFFCF9&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Offset&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.68457&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;GradientStop&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Color&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;#B8FFFFFF&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Offset&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;1&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;RadialGradientBrush&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ControlTemplate&lt;/span&gt;&lt;span style="COLOR:red;"&gt; TargetType&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;x&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;:&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Type&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Thumb&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Grid&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Canvas&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Width&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;11.6&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Height&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;11.6477&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Background&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Transparent&amp;quot; &amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Path&lt;/span&gt;&lt;span style="COLOR:red;"&gt; x&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;:&lt;/span&gt;&lt;span style="COLOR:red;"&gt;Name&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Path1&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Fill&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Path1Brush&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Width&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;11.6&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:red;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Height&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;11.6&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Canvas.Left&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Canvas.Top&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.0477295&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Stretch&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Fill&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:red;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;F1 M 5.80002,0.0477295C 9.00323,0.0477295 11.6,2.64435 &lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11.6,5.84775C 11.6,9.05096 &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;9.00323,11.6477 5.80002,11.6477C 2.5968,&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11.6477 0,9.05096 0,5.84775C 0,2.64435 2.5968,0.0477295 5.80002,0.0477295&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Path&lt;/span&gt;&lt;span style="COLOR:red;"&gt; x&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;:&lt;/span&gt;&lt;span style="COLOR:red;"&gt;Name&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Path2&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Fill&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Path2Brush&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Width&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;11.526&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:red;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Height&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;6.43983&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Canvas.Left&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0.0370712&amp;quot;&lt;/span&gt; &lt;span style="COLOR:red;"&gt;Canvas.Top&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Stretch&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Fill&amp;quot;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:red;"&gt;Data&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;F1 M 5.80006,0C 8.98283,0 11.5631,2.58005 11.5631,5.76297C 11.5631,7.30338 &lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8.67518,5.44769 5.88872,5.49701C 2.91804,5.5495 0.0370712,&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7.40518 0.0370712,5.76297C 0.0370712,2.58005 2.61729,0 5.80006,0&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Canvas&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&lt;font color="#a31515"&gt;&amp;nbsp; &lt;/font&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Grid&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ControlTemplate.Triggers&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Trigger&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;IsMouseOver&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;True&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Fill&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Path1Brush&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; TargetName&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Path1&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Trigger&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Trigger&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;IsEnabled&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;false&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Setter&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Property&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Fill&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Value&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Path2Brush&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; TargetName&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Path2&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Trigger&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ControlTemplate.Triggers&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ControlTemplate&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;4. Link the &lt;em&gt;ResourceDictionary&lt;/em&gt; to your Simple Style:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/Implementingcustomstyle_C182/image_2.png"&gt;&lt;img style="BORDER-TOP-WIDTH:0px;BORDER-LEFT-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-RIGHT-WIDTH:0px;" height="126" alt="image" src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/Implementingcustomstyle_C182/image_thumb.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;5. Create a slider and apply the style on to the slider like so:&lt;/p&gt;
&lt;div dir="ltr" style="PADDING-RIGHT:5px;PADDING-LEFT:5px;FONT-SIZE:11pt;BACKGROUND:white;PADDING-BOTTOM:5px;WIDTH:450px;COLOR:black;MAX-HEIGHT:350px;PADDING-TOP:5px;FONT-FAMILY:consolas;WHITE-SPACE:nowrap;"&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Slider&lt;/span&gt;&lt;span style="COLOR:red;"&gt; HorizontalAlignment&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Right&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Margin&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;0,0,141,40&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; VerticalAlignment&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;Bottom&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; &lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:red;"&gt;&amp;nbsp; Width&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;177&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; x&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;:&lt;/span&gt;&lt;span style="COLOR:red;"&gt;Name&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;VistaSlider1&amp;quot;&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Style&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;{&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;DynamicResource&lt;/span&gt;&lt;span style="COLOR:red;"&gt; &lt;strong&gt;VistaSlider&lt;/strong&gt;&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;}&amp;quot;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Slider.Resources&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ResourceDictionary&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ResourceDictionary.MergedDictionaries&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ResourceDictionary&lt;/span&gt;&lt;span style="COLOR:red;"&gt; Source&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;=&amp;quot;ResourceDictionary1.xaml&amp;quot;/&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ResourceDictionary.MergedDictionaries&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp; &lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;ResourceDictionary&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:#a31515;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Slider.Resources&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style="PADDING-RIGHT:0px;PADDING-LEFT:0px;FONT-SIZE:8pt;BACKGROUND:none transparent scroll repeat 0% 0%;PADDING-BOTTOM:0px;MARGIN:0px;PADDING-TOP:0px;"&gt;&lt;span style="COLOR:blue;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR:#a31515;"&gt;Slider&lt;/span&gt;&lt;span style="COLOR:blue;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;&lt;/div&gt;
&lt;p&gt;You should end up with something looking like this:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/Implementingcustomstyle_C182/VistaToolBar_2.png"&gt;&lt;img style="BORDER-TOP-WIDTH:0px;BORDER-LEFT-WIDTH:0px;BORDER-BOTTOM-WIDTH:0px;BORDER-RIGHT-WIDTH:0px;" height="35" alt="VistaToolBar" src="http://blogs.microsoft.co.il/blogs/yogev/WindowsLiveWriter/Implementingcustomstyle_C182/VistaToolBar_thumb.png" width="244" border="0" /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Enjoy!&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=39317" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/XAML/default.aspx">XAML</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/WPF/default.aspx">WPF</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Expression+Blend/default.aspx">Expression Blend</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Resources/default.aspx">Resources</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Expression+Design/default.aspx">Expression Design</category><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Style/default.aspx">Style</category></item><item><title>Intro</title><link>http://blogs.microsoft.co.il/blogs/yogev/archive/2007/12/03/intro.aspx</link><pubDate>Mon, 03 Dec 2007 05:05:00 GMT</pubDate><guid isPermaLink="false">b5c4f5bc-c09b-4439-a595-91a98c1847df:39193</guid><dc:creator>Yogev</dc:creator><slash:comments>0</slash:comments><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://blogs.microsoft.co.il/blogs/yogev/rsscomments.aspx?PostID=39193</wfw:commentRss><comments>http://blogs.microsoft.co.il/blogs/yogev/archive/2007/12/03/intro.aspx#comments</comments><description>&lt;p&gt;In this blog will try to &lt;span class="cQueryStrip"&gt;feature insights about developing Winforms, Designers, Controls and many solutions I had cooked up.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="cQueryStrip"&gt;I will also explorer useful tools and technologies from Microsoft.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span class="cQueryStrip"&gt;&lt;/span&gt;&lt;/p&gt;&lt;img src="http://blogs.microsoft.co.il/aggbug.aspx?PostID=39193" width="1" height="1"&gt;</description><category domain="http://blogs.microsoft.co.il/blogs/yogev/archive/tags/Intro/default.aspx">Intro</category></item></channel></rss>