<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://msmvps.com/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>Search results for 'app:weblogs' matching tag 'WPF'</title><link>http://msmvps.com/search/SearchResults.aspx?q=app:weblogs&amp;tag=WPF&amp;orTags=0&amp;o=DateDescending</link><description>Search results for 'app:weblogs' matching tag 'WPF'</description><dc:language>en-US</dc:language><generator>CommunityServer 2008.5 SP2 (Build: 40407.4157)</generator><item><title>Nederlandse CodeCamp 2009</title><link>http://msmvps.com/blogs/theproblemsolver/archive/2009/10/19/nederlandse-codecamp-2009.aspx</link><pubDate>Mon, 19 Oct 2009 05:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1732965</guid><dc:creator>Maurice</dc:creator><description>&lt;p&gt;Op 21 november 2009 organiseren de &lt;a href="http://www.sdn.nl"&gt;SDN&lt;/a&gt;, &lt;a href="http://www.dotned.nl"&gt;Stichting dotNed&lt;/a&gt; en &lt;a href="http://www.VBcentral.nl"&gt;VBcentral&lt;/a&gt; samen het derde Nederlandse &lt;a href="http://www.codecamp.nl"&gt;Code Camp&lt;/a&gt;. Dit is een dag lang met code, code sharing, freaking en gezellig samenzijn. Een evenement door ontwikkelaars, voor ontwikkelaars. De regie ligt voor een belangrijk deel bij de deelnemers! Het aantal plaatsen voor deelnemers is wel beperkt tot maximaal 150. Wacht dus niet te lang met beslissen want voor je het weet is er geen plaats meer. Vergeet bij je aanmelding niet op te geven welke onderwerpen je interesse hebben. Bovendien nodigen we iedereen graag uit om zelf een sessie in te vullen.&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;Op de website, &lt;a href="http://www.codecamp.nl"&gt;www.codecamp.nl&lt;/a&gt;, vind je meer informatie en kan je je aanmelden.&lt;/p&gt;</description></item><item><title>New Features in CTP2 ADO.NET Data Services v1.5 Explained</title><link>http://msmvps.com/blogs/nunogodinho/archive/2009/09/02/new-features-in-ctp2-ado-net-data-services-v1-5-explained.aspx</link><pubDate>Wed, 02 Sep 2009 05:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1720315</guid><dc:creator>NunoGodinho</dc:creator><description>&lt;p&gt;After yesterdays &lt;a href="http://msmvps.com/blogs/nunogodinho/archive/2009/09/01/new-version-ctp-of-ado-net-data-services-v1-5-is-now-available.aspx" target="_blank"&gt;post about the availability of the CTP2 of ADO.NET Data Services v1.5&lt;/a&gt; here are some more details regarding the Projections, Feed Customization and Data Binding.&lt;/p&gt;  &lt;p&gt;As told before &lt;strong&gt;Projections, &lt;/strong&gt;the possibility of getting only the columns chosen instead of retrieving all the columns. With this we have now a new set of expressions to provide this ability on the URI, and in order to achieve we have now two new keywords available, that are:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;em&gt;$select, &lt;/em&gt;allow us to define which columns we want to be get       &lt;ul&gt;       &lt;li&gt;Instead of using only the &lt;a href="http://127.0.0.1/NorthwindService.svc/Customers"&gt;http://127.0.0.1/NorthwindService.svc/Customers&lt;/a&gt; that will return every column of the Entity Customer, we want to define that we only get the CustomerID and the ContactName, and in order to achieve this we use the new $select keyword like this &lt;a href="http://127.0.0.1/NorthwindService.svc/Customers?$select=CustomerID,ContactName"&gt;http://127.0.0.1/NorthwindService.svc/Customers?$select=CustomerID,ContactName&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;The way to define the several columns is to use commas to separate the column names. &lt;/li&gt;        &lt;li&gt;If we want to use this keyword and define all columns is the following &lt;a href="http://127.0.0.1/NorthwindService.svc/Customers?$select"&gt;http://127.0.0.1/NorthwindService.svc/Customers?$select&lt;/a&gt;=* &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;em&gt;$expand, &lt;/em&gt;defines that along with the results from the requested entity, we also want to get the results from a specific relationship       &lt;ul&gt;       &lt;li&gt;Usage: &lt;a href="http://127.0.0.1/NorthwindService.svc/Customers?$expand=Orders/OrderDetails"&gt;http://127.0.0.1/NorthwindService.svc/Customers?$expand=Orders/OrderDetails&lt;/a&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;But in order for this to work we need to add the following 2 properties to the service:      &lt;ul&gt;       &lt;li&gt;First, make projections available using the URI.          &lt;pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;padding-bottom:5px;background-color:#fbfbfb;min-height:40px;padding-left:5px;width:449px;padding-right:5px;height:52px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding-top:5px;"&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  1: config.DataServiceBehavior.AcceptProjectionRequests = &lt;span style="color:#0000ff;"&gt;true&lt;/span&gt;;&lt;/pre&gt;&lt;/pre&gt;
      &lt;/li&gt;

      &lt;li&gt;Secondly, make the protocol version to V2 
        &lt;pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;padding-bottom:5px;background-color:#fbfbfb;min-height:40px;padding-left:5px;width:451px;padding-right:5px;height:52px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding-top:5px;"&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  1: config.DataServiceBehavior.MaxProtocolVersion = System.Data.Services.Common.DataServiceProtocolVersion.V2;&lt;/pre&gt;&lt;/pre&gt;
      &lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;For more information’s regarding this subject read this &lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/09/01/ado-net-data-services-v1-5-ctp2-projections-overview-server.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/09/01/ado-net-data-services-v1-5-ctp2-projections-overview-server.aspx"&gt;post&lt;/a&gt; from the Product Team. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Feed Customizations&lt;/strong&gt; are the possibility to customize the way the feed is created instead of using only the default AtomPub version.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;In order to achieve this customization we must use the EntityPropertyMappingAttribute that will define the relationship between the Property and the name that will be used in the feed. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&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; In the following sample we are defining that when building the feed, instead of using the complete type definition&lt;/p&gt;

&lt;ul&gt;
  &lt;ul&gt;
    &lt;pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;padding-bottom:5px;background-color:#fbfbfb;min-height:40px;padding-left:5px;width:451px;padding-right:5px;height:129px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding-top:5px;"&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  1: &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;author&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  2:    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;name&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;Nuno Godinho&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;name&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  3:    &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;email&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;someone@company.com&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;email&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  4: &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;author&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
  &lt;/ul&gt;
&lt;/ul&gt;

&lt;p&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; we will have the Author element with the value that is on the Name Property of the Author class (considering that Author is a type that contains several properties and one of them is Name):&lt;/p&gt;

&lt;ul&gt;
  &lt;ul&gt;
    &lt;pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;padding-bottom:5px;background-color:#fbfbfb;min-height:40px;padding-left:5px;width:453px;padding-right:5px;height:187px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding-top:5px;"&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  1: [EntityPropertyMapping(
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  2:        &amp;quot;&lt;span style="color:#8b0000;"&gt;Author&lt;/span&gt;&amp;quot;,&lt;span style="color:#008000;"&gt;/*Source property path , the property of the Entity type to be mapped*/&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  3:        SyndicationItemProperty.AuthorName,&lt;span style="color:#008000;"&gt;/* Syndication item to which the Source Property is mapped*/&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  4:        SyndicationTextContentKind.Plaintext,&lt;span style="color:#008000;"&gt;/* Syndication content kind for the syndication item this property is bound to */&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  5:        &lt;span style="color:#0000ff;"&gt;true&lt;/span&gt;&lt;span style="color:#008000;"&gt;/* If  false the property value is only placed at the mapped location &amp;amp; removed from the &amp;lt;content&amp;gt; section of the atom:entry*/&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  6:        )]&lt;/pre&gt;&lt;/pre&gt;
and so the result will be: 

    &lt;pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;padding-bottom:5px;background-color:#fbfbfb;min-height:40px;padding-left:5px;width:452px;padding-right:5px;height:52px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding-top:5px;"&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  1: &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;author&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;Nuno Godinho&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;author&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;
For more information&amp;#39;s regarding this customization read the following posts: 

    &lt;ul&gt;
      &lt;p&gt;&lt;a href="http://blogs.msdn.com/phaniraj/archive/2009/08/31/introducing-web-friendly-feeds-aka-friendly-feeds-updated-for-ctp2.aspx" target="_blank"&gt;Introducing Web Friendly Feeds aka Friendly Feeds (Updated for CTP2)&lt;/a&gt;&lt;/p&gt;

      &lt;p&gt;&lt;a href="http://blogs.msdn.com/phaniraj/archive/2009/03/21/ado-net-data-services-friendly-feeds-mapping-clr-types.aspx" target="_blank"&gt;ADO.NET Data Services Friendly Feeds , Mapping CLR Types&lt;/a&gt;&lt;/p&gt;

      &lt;p&gt;&lt;a href="http://blogs.msdn.com/phaniraj/archive/2009/03/28/ado-net-data-services-friendly-feeds-mapping-edm-types-i.aspx" target="_blank"&gt;ADO.NET Data Services Friendly Feeds , Mapping EDM Types – I&lt;/a&gt;&lt;/p&gt;
    &lt;/ul&gt;
  &lt;/ul&gt;
&lt;/ul&gt;

&lt;p&gt;&amp;#160;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Data Binding &lt;/strong&gt;is now simplified, because using the DataServiceCollection class we can bind it directly to the Data Service.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;For more information’s regarding this subject read this &lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/09/01/introduction-to-data-binding-in-ctp2.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/09/01/introduction-to-data-binding-in-ctp2.aspx"&gt;post&lt;/a&gt; from the Product Team. &lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>TemplateBinding inside ControlTemplate.Triggers</title><link>http://msmvps.com/blogs/nunogodinho/archive/2009/09/01/templatebinding-inside-controltemplate-triggers.aspx</link><pubDate>Tue, 01 Sep 2009 05:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1719937</guid><dc:creator>NunoGodinho</dc:creator><description>&lt;p&gt;One of the limitations of TemplateBinding Markup in WPF is the fact that we cannot use it inside the ControlTemplate.Triggers because it really doesn’t work, since as Mike Hillberg said &lt;a href="http://social.msdn.microsoft.com/forums/en-US/wpf/thread/1de3470a-1a50-4e2f-aa38-2a9a3507084a/" target="_blank"&gt;here&lt;/a&gt;, &lt;em&gt;“TemplateBinding is a lightweight, but less functional, version of a Binding with a RelativeSource of TemplatedParent.&amp;#160; One of the things that a TemplateBinding can&amp;#39;t do is work within the ControlTemplate.Triggers; TemplateBinding only works within the template content”&lt;/em&gt; .&lt;/p&gt;  &lt;p&gt;So we have this:&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; MyControl.cs&lt;/p&gt;  &lt;pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;padding-bottom:5px;background-color:#fbfbfb;min-height:40px;padding-left:5px;width:500px;padding-right:5px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding-top:5px;"&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  1: 	&lt;span style="color:#0000ff;"&gt;public&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;class&lt;/span&gt; MyControl : Control
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  2: 	{
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  3: 
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  4: 		&lt;span style="color:#0000ff;"&gt;public&lt;/span&gt; Boolean Selected
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  5: 		{
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  6: 			&lt;span style="color:#0000ff;"&gt;get&lt;/span&gt; { &lt;span style="color:#0000ff;"&gt;return&lt;/span&gt; (Boolean)GetValue(SelectedProperty); }
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  7: 			&lt;span style="color:#0000ff;"&gt;set&lt;/span&gt; { SetValue(SelectedProperty, &lt;span style="color:#0000ff;"&gt;value&lt;/span&gt;); }
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  8: 		}
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  9: 
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 10: 		&lt;span style="color:#008000;"&gt;// Using a DependencyProperty as the backing store for Selected.  This enables animation, styling, binding, etc...&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 11: 		&lt;span style="color:#0000ff;"&gt;public&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;static&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;readonly&lt;/span&gt; DependencyProperty SelectedProperty =
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 12: 			DependencyProperty.Register(&amp;quot;&lt;span style="color:#8b0000;"&gt;Selected&lt;/span&gt;&amp;quot;, &lt;span style="color:#0000ff;"&gt;typeof&lt;/span&gt;(Boolean), &lt;span style="color:#0000ff;"&gt;typeof&lt;/span&gt;(MyControl), &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; UIPropertyMetadata(&lt;span style="color:#0000ff;"&gt;false&lt;/span&gt;));
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 13: 
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 14: 
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 15: 
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 16: 		&lt;span style="color:#0000ff;"&gt;public&lt;/span&gt; Brush SelectedColor
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 17: 		{
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 18: 			&lt;span style="color:#0000ff;"&gt;get&lt;/span&gt; { &lt;span style="color:#0000ff;"&gt;return&lt;/span&gt; (Brush)GetValue(SelectedColorProperty); }
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 19: 			&lt;span style="color:#0000ff;"&gt;set&lt;/span&gt; { SetValue(SelectedColorProperty, &lt;span style="color:#0000ff;"&gt;value&lt;/span&gt;); }
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 20: 		}
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 21: 
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 22: 		&lt;span style="color:#008000;"&gt;// Using a DependencyProperty as the backing store for SelectedColor.  This enables animation, styling, binding, etc...&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 23: 		&lt;span style="color:#0000ff;"&gt;public&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;static&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;readonly&lt;/span&gt; DependencyProperty SelectedColorProperty =
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 24: 			DependencyProperty.Register(&amp;quot;&lt;span style="color:#8b0000;"&gt;SelectedColor&lt;/span&gt;&amp;quot;, &lt;span style="color:#0000ff;"&gt;typeof&lt;/span&gt;(Brush), &lt;span style="color:#0000ff;"&gt;typeof&lt;/span&gt;(MyControl), &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; UIPropertyMetadata(Brushes.Red));
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 25: 
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 26: 
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 27: 		&lt;span style="color:#0000ff;"&gt;public&lt;/span&gt; MyControl()
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 28: 		{			
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 29: 		}
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 30: 
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 31: 		&lt;span style="color:#0000ff;"&gt;protected&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;override&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;void&lt;/span&gt; OnInitialized(EventArgs e)
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 32: 		{
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 33: 			&lt;span style="color:#0000ff;"&gt;base&lt;/span&gt;.OnInitialized(e);
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 34: 
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 35: 			&lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.MouseLeftButtonDown += &lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; System.Windows.Input.MouseButtonEventHandler(MyControl_MouseLeftButtonDown);
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 36: 		}
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 37: 
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 38: 		&lt;span style="color:#0000ff;"&gt;void&lt;/span&gt; MyControl_MouseLeftButtonDown(&lt;span style="color:#0000ff;"&gt;object&lt;/span&gt; sender, System.Windows.Input.MouseButtonEventArgs e)
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 39: 		{
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 40: 			MessageBox.Show(&lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.SelectedColor.ToString());
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 41: 			&lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.Selected = !&lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;.Selected;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 42: 		}
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 43: 	}
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 44: &lt;/pre&gt;&lt;/pre&gt;

&lt;p&gt;&lt;strong&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Window1.xaml&lt;/strong&gt;&lt;/p&gt;

&lt;pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;padding-bottom:5px;background-color:#fbfbfb;min-height:40px;padding-left:5px;width:500px;padding-right:5px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding-top:5px;"&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  1: &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Window&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;x&lt;/span&gt;:&lt;span style="color:#ff0000;"&gt;Class&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;WpfApplication13.Window1&amp;quot;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  2:     &lt;span style="color:#ff0000;"&gt;xmlns&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&amp;quot;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  3:     &lt;span style="color:#ff0000;"&gt;xmlns&lt;/span&gt;:&lt;span style="color:#ff0000;"&gt;x&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml&amp;quot;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  4: 	&lt;span style="color:#ff0000;"&gt;xmlns&lt;/span&gt;:&lt;span style="color:#ff0000;"&gt;local&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;clr-namespace:WpfApplication13&amp;quot;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  5:     &lt;span style="color:#ff0000;"&gt;Title&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;Window1&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Height&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;300&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Width&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;300&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  6:     &lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Grid&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  7: 		&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#c71585;"&gt;local&lt;/span&gt;:&lt;span style="color:#800000;"&gt;MyControl&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;x&lt;/span&gt;:&lt;span style="color:#ff0000;"&gt;Name&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;ctrl1&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  8: 			&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#c71585;"&gt;local&lt;/span&gt;:&lt;span style="color:#800000;"&gt;MyControl.Template&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  9: 				&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;ControlTemplate&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;TargetType&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;{x:Type local:MyControl}&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 10: 					&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Grid&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Background&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;Green&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;x&lt;/span&gt;:&lt;span style="color:#ff0000;"&gt;Name&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;source&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;/&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 11: 					&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;ControlTemplate.Triggers&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 12: 						&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Trigger&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Property&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;Selected&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Value&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;true&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 13: 							&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Setter&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;TargetName&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;source&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Property&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;Background&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Value&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;{TemplateBinding SelectedColor}&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;/&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 14: 						&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;Trigger&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 15: 						&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Trigger&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Property&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;Selected&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Value&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;false&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 16: 							&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Setter&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;TargetName&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;source&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Property&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;Background&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Value&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;Green&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;/&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 17: 						&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;Trigger&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 18: 					&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;ControlTemplate.Triggers&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 19: 				&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;ControlTemplate&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 20: 			&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#c71585;"&gt;local&lt;/span&gt;:&lt;span style="color:#800000;"&gt;MyControl.Template&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 21: 		&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#c71585;"&gt;local&lt;/span&gt;:&lt;span style="color:#800000;"&gt;MyControl&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 22: 	&lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;Grid&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 23: &lt;span style="color:#0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color:#800000;"&gt;Window&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt; 24: &lt;/pre&gt;&lt;/pre&gt;

&lt;p&gt;When we compile we get the following error, &lt;em&gt;&amp;quot;Cannot convert the value in attribute &amp;#39;Value&amp;#39; to object of type &amp;#39;&amp;#39;.&amp;#160; Error at object &amp;#39;System.Windows.Setter&amp;#39; in markup file &amp;#39;WpfApplication13;component/window1.xaml&amp;#39; Line 13 Position 58.&amp;quot;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;So how can we solve this problem?&lt;/p&gt;

&lt;p&gt;&amp;#160;&amp;#160; Since the problem here is that &lt;em&gt;TemplateBinding&lt;/em&gt; is not supported inside the ControlTemplate.Triggers, we have to find another way to make the binding, and so we just change the line 13 to&lt;/p&gt;

&lt;pre style="border-bottom:#cecece 1px solid;border-left:#cecece 1px solid;padding-bottom:5px;background-color:#fbfbfb;min-height:40px;padding-left:5px;width:500px;padding-right:5px;overflow:auto;border-top:#cecece 1px solid;border-right:#cecece 1px solid;padding-top:5px;"&gt;&lt;pre style="background-color:#fbfbfb;margin:0em;width:100%;font-family:consolas,&amp;#39;Courier New&amp;#39;,courier,monospace;font-size:12px;"&gt;  1: 							&lt;span style="color:#0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color:#800000;"&gt;Setter&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;TargetName&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;source&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Property&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;Background&amp;quot;&lt;/span&gt; &lt;span style="color:#ff0000;"&gt;Value&lt;/span&gt;=&lt;span style="color:#0000ff;"&gt;&amp;quot;{Binding RelativeSource={RelativeSource TemplatedParent}, Path=SelectedColor}&amp;quot;&lt;/span&gt;&lt;span style="color:#0000ff;"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;

&lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; And if we look at the &lt;a href="http://msdn.microsoft.com/en-us/library/ms742882.aspx" target="_blank"&gt;TemplateBinding Markup&lt;/a&gt; page in MSDN, the usage of TemplateBinding is similar to the &lt;a href="http://msdn.microsoft.com/en-us/library/ms750413.aspx" target="_blank"&gt;Binding Markup&lt;/a&gt; using TemplatedPart as the RelativeSource, like {Binding RelativeSource={RelativeSource TemplatedParent}, Path=&lt;em&gt;DependencyPropertyToBind&lt;/em&gt;}&lt;/p&gt;

&lt;p&gt;Hope this helps.&lt;/p&gt;</description></item><item><title>Conferencia – Silverlight como Plataforma de Desarrollo</title><link>http://msmvps.com/blogs/juank/archive/2009/08/30/conferencia-silverlight-como-plataforma-de-desarrollo.aspx</link><pubDate>Sun, 30 Aug 2009 05:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1719222</guid><dc:creator>JuanKRuiz</dc:creator><description>&lt;p&gt;&lt;b&gt;&lt;span style="color:#0000ff;"&gt;Puedes ver el art&amp;iacute;culo original en  mi blog: &lt;/span&gt;&lt;/b&gt;&lt;br /&gt;

 &lt;a href="http://juank.black-byte.com/eventos-silverlight-plataforma-desarrollo/" target="_blank"&gt;&lt;b&gt;&lt;span style="color:#0000ff;"&gt;http://juank.black-byte.com/eventos-silverlight-plataforma-desarrollo/&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Fecha:&lt;/b&gt; Mi&amp;eacute;rcoles 2 de Septiembrea las 18:30 (-5 GMT)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Lugar: &lt;/b&gt;Auditorio Fundaci&amp;oacute;n Universitaria CAFAM                &lt;br /&gt;AK 68 N&amp;deg; 90-88 CAFAM Floresta, Bogot&amp;aacute; &amp;ndash; Colombia                &lt;br /&gt;&amp;iexcl;&amp;iexcl;&amp;iexcl;..ENTRADA LIBRE&amp;hellip;!!!! &lt;/p&gt;
&lt;p&gt;&lt;b&gt;&lt;a href="http://www.bogotadotnet.org/conferencias/registro.aspx"&gt;&lt;img src="http://bogotadotnet.org/getfile/2ed508e1-dce8-4fd6-bb9b-2da3f9a859db/btn_Registro_Presencial_2_175x95.aspx" border="0" alt="" /&gt;&lt;/a&gt;                                  &lt;br /&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Silverlight es una tecnolog&amp;iacute;a relativamente nueva en el mundo de las
Aplicaciones Enriquecidas para Internet, la cual nos permite extender
la funcionalidad de nuestras aplicaciones Web a trav&amp;eacute;s de un componente
ligero, multi-plataforma y multi-navegador. En esta sesi&amp;oacute;n podr&amp;aacute;s
conocer cu&amp;aacute;les son las caracter&amp;iacute;sticas de la &amp;uacute;ltima versi&amp;oacute;n de
Silverlight que la hacen una excelente opci&amp;oacute;n para construir este tipo
de aplicaciones. Ven y conoce qu&amp;eacute; es Silverlight y c&amp;oacute;mo lo puedes
utilizar como plataforma de desarrollo para aplicativos Web modernos.&lt;b&gt;             &lt;br /&gt;&lt;/b&gt;&lt;b&gt;&lt;a href="http://www.bogotadotnet.org/conferencias/registro.aspx"&gt;&lt;img src="http://bogotadotnet.org/getfile/c629c433-7e53-4a6f-a600-9d1e441f86c5/Evento_090902_Silverlight_3_670x503.aspx" border="0" height="434" width="578" alt="" /&gt;&lt;/a&gt;&lt;/b&gt;&lt;/p&gt;</description></item><item><title>PDF da Palestra WPF para Desenvolvedores WindowsForms (TechEdBrasil 2009)</title><link>http://msmvps.com/blogs/cmattos/archive/2009/08/27/pdf-da-palestra-wpf-para-desenvolvedores-windowsforms-techedbrasil-2009.aspx</link><pubDate>Thu, 27 Aug 2009 05:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1718732</guid><dc:creator>Cmattos</dc:creator><description>&lt;p&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/cmattos/2555.teched2009thumb.jpg"&gt;&lt;img height="130" width="194" src="http://msmvps.com/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/cmattos/2555.teched2009thumb.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Pessoal, conforme prometido, aqui est&amp;aacute; o link para baixar o PDF da minha palestra WPF para Desenvolvedores WindowsForms apresentada durante o TechEdBrasil 2009. &lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/cmattos/8422.DEV202_5F00_CarlosMattos.pdf"&gt;http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/cmattos/8422.DEV202_5F00_CarlosMattos.pdf&lt;/a&gt;. Estou concluindo um artigo aborando todas as demos&amp;nbsp; apresentadas nesta palestra. Este artigo ser&amp;aacute; disponibilizado aqui no meu Blog, no portal Linha de C&amp;oacute;digo e no MSDN Brasil Online. Por favor, comentem, participem, enviem suas d&amp;uacute;vidas por e-mail. &lt;/p&gt;</description></item><item><title>Interesting Diagram Generation Controls</title><link>http://msmvps.com/blogs/nunogodinho/archive/2009/08/06/interesting-diagram-generation-controls.aspx</link><pubDate>Thu, 06 Aug 2009 05:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1713869</guid><dc:creator>NunoGodinho</dc:creator><description>&lt;p&gt;Some time from now I was searching for controls that would made the generation of diagrams of several kinds, like for instance::&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Network Diagram &lt;/li&gt;    &lt;li&gt;Worlflow Diagram &lt;/li&gt;    &lt;li&gt;Database Diagram &lt;/li&gt;    &lt;li&gt;Hierarchy Diagram &lt;/li&gt;    &lt;li&gt;… &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160; Basically I was trying to find a control that would solve the problem of having to search for different controls depending on the type of diagrams I would need in my projects, an in this case the project was in Silverlight. After a lot of research and a lot of CodeProject and others that would just fit a specific problem, I came across one that solved exactly what I was needing, and I found it on &lt;a href="http://www.mindfusion.eu/" target="_blank"&gt;MindFusion&lt;/a&gt; named &lt;a href="http://www.mindfusion.eu/diagramlite.html" target="_blank"&gt;DiagramLite&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&amp;#160; The DiagramLite is a quite interesting control since it provides a way for us to make available any kind of diagram in Silverlight and with the possibility of editing that diagram, and this makes it possible to create a new Workflow designer for our solutions using Silverlight. (Of course I now that this was done without this control, but it seems to me that it would be a lot easier with it, but this is just from my experience).&lt;/p&gt;  &lt;p&gt;&amp;#160; You can find &lt;a href="http://mindfusion.eu/demos/diagramlite/index.html" target="_blank"&gt;samples here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&amp;#160; Along with the Silverlight version I also found that they also have several other versions for WPF, WinForms, ASP.NET, .Net Compact Framework and even Java, and for this it seems that they are pretty experts into the Diagram controls, and it’s pretty interesting since their support is pretty quick as well as clear.&lt;/p&gt;  &lt;p&gt;&amp;#160; I hope this post comes handy for you, since when it was me I had to to do a lot of searching and testing for several possibilities.&lt;/p&gt;</description></item><item><title>Annexe : Int&amp;#233;gration de Xna dans WPF</title><link>http://msmvps.com/blogs/valentin/archive/2009/07/20/annexe-int-233-gration-de-xna-dans-wpf.aspx</link><pubDate>Mon, 20 Jul 2009 05:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1703480</guid><dc:creator>valentin</dc:creator><description>&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;img height="24" width="24" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin/sommaire.png" align="absMiddle" border="1" style="width:24px;height:24px;" alt="" /&gt;&lt;span style="background-color:#ffff00;"&gt;Retourner au &lt;/span&gt;&lt;a href="http://msmvps.com/blogs/valentin/archive/2007/03/30/tutoriaux-xna-sommaire-g-n-ral.aspx"&gt;&lt;span style="background-color:#ffff00;"&gt;&lt;span style="color:#3399ff;"&gt;sommaire des cours&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Il existe de nombreuses m&amp;eacute;thodes pour afficher des sc&amp;egrave;nes 3D &amp;agrave; base de Xna dans un environnement WPF. Certaines souffrent de probl&amp;egrave;mes de lenteur (r&amp;eacute;alis&amp;eacute;es le plus souvent &amp;agrave; base de WindowsFormHost), d&amp;rsquo;autres ne permettent qu&amp;rsquo;une interaction limit&amp;eacute;e avec les contr&amp;ocirc;les et l&amp;rsquo;interface WPF. R&amp;eacute;aliser des affichages multiples comme on peut en avoir dans des logiciels comme Maya devient alors probl&amp;eacute;matique&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;a href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/7532.annexe3_2D00_1.png"&gt;&lt;img src="http://msmvps.com/resized-image.ashx/__size/550x0/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/7532.annexe3_2D00_1.png" border="0" style="border:2px solid black;vertical-align:middle;" alt="" /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="mso-fareast-language:FR;mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Il existe pourtant un moyen, relativement simple d&amp;rsquo;arriver &amp;agrave; ses fins. Ce moyen consiste tout simplement &amp;agrave; donner une impression visuelle &amp;agrave; l&amp;rsquo;utilisateur d&amp;rsquo;une int&amp;eacute;gration Xna parfaite dans un widget WPF alors qu&amp;rsquo;il n&amp;rsquo;en est rien. La cl&amp;eacute; de cet effet r&amp;eacute;side dans une parfaite manipulation des fen&amp;ecirc;tres.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Principe&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Nous voulons pouvoir int&amp;eacute;grer notre sc&amp;egrave;ne Xna dans une interface WPF de la m&amp;ecirc;me mani&amp;egrave;re que nous int&amp;eacute;grons un Canvas ou un quelconque widget &amp;agrave; une interface. Or le meilleur moyen d&amp;rsquo;afficher une sc&amp;egrave;ne 3D en Xna est de l&amp;rsquo;incorporer dans une fen&amp;ecirc;tre. Impossible en effet d&amp;rsquo;obtenir le handle de tout contr&amp;ocirc;le en WPF comme on peut le faire en Winform. L&amp;rsquo;astuce consiste alors &amp;agrave; r&amp;eacute;&amp;eacute;crire une partie du framework Xna tournant autour de la classe Game. Le but &amp;eacute;tant de faire h&amp;eacute;riter une nouvelle classe Game d&amp;rsquo;un Panel (dans notre cas un Canvas) afin de pouvoir l&amp;rsquo;int&amp;eacute;grer dans l&amp;rsquo;arborescence visuel WPF. La surface visuelle de ce panel sera ainsi la zone d&amp;rsquo;affichage de la sc&amp;egrave;ne Xna li&amp;eacute;e. Pourtant nous venons de dire qu&amp;rsquo;il n&amp;rsquo;&amp;eacute;tait pas possible d&amp;rsquo;obtenir un handle d&amp;rsquo;un contr&amp;ocirc;le visuel qui n&amp;rsquo;h&amp;eacute;rite pas de Window. Comment y afficher de la 3D avec Xna donc&amp;nbsp;? Nous allons tout simplement afficher une fen&amp;ecirc;tre sans bordure exactement au dessus de ce panel. Cette fen&amp;ecirc;tre sera toujours au dessus lorsque l&amp;rsquo;application aura le focus et que le panel sera visible, et sera cach&amp;eacute;e dans le cas contraire. De m&amp;ecirc;me, lorsque le panel n&amp;rsquo;est pas visible, nous stopperons l&amp;rsquo;activit&amp;eacute; du jeu.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Chaque modification de la taille ou de la position du panel entrainera une modification &amp;eacute;quivalente chez la fen&amp;ecirc;tre sus-jacente.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="mso-fareast-language:FR;mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&amp;nbsp;&lt;img height="334" width="597" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/6036.annexe3_2D00_2.png" border="0" style="border:2px solid black;vertical-align:middle;" alt="" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Cette fen&amp;ecirc;tre se trouvant donc exactement au dessus du panel et ayant une taille identique l&amp;rsquo;illusion est parfaite.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;R&amp;eacute;alisation&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;La premi&amp;egrave;re &amp;eacute;tape consiste donc &amp;agrave; r&amp;eacute;&amp;eacute;crire une partie des classes de l&amp;rsquo;assembly Microsoft.Xna.Framework et Microsoft.Xna.Framework.Game. Ce afin de s&amp;rsquo;&amp;eacute;manciper du fonctionnement de base de la classe Game trop fortement coupl&amp;eacute;e &amp;agrave; un fonctionnement sur fen&amp;ecirc;tre unique. Le projet Arcane.Xna.Presentation reprend donc une partie des classes de ces assemblies pour une utilisation avec WPF.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="mso-fareast-language:FR;mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;img src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/1072.annexe3_2D00_3.png" border="0" style="border:2px solid black;vertical-align:middle;" alt="" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Rien de bien compliqu&amp;eacute;. Seules les classes Game et GameHost sont r&amp;eacute;ellement int&amp;eacute;ressantes ici.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;La classe Game comme pr&amp;eacute;cis&amp;eacute; pr&amp;eacute;c&amp;eacute;demment correspond &amp;agrave; la zone d&amp;rsquo;affichage de nos sc&amp;egrave;nes 3D dans les interfaces utilisateurs WPF. Elle h&amp;eacute;rite de Canvas. L&amp;rsquo;utilisation de Canvas r&amp;eacute;pond &amp;agrave; un besoin bien particulier que nous pr&amp;eacute;senterons plus loin. La classe Game ne se diff&amp;eacute;rencie de la classe Game de l&amp;rsquo;assembly Microsoft.Xna.Framework.Game que par quelques membres. Tout d&amp;rsquo;abord elle poss&amp;egrave;de un membre de type GameHost qui est en fait la fen&amp;ecirc;tre se positionnant juste au dessus. Elle poss&amp;egrave;de de m&amp;ecirc;me un membre nomm&amp;eacute; _tichGenerator qui va permettre de mettre &amp;agrave; jour l&amp;rsquo;affichage &amp;agrave; intervalle r&amp;eacute;guliers.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Le constructeur initialise ses membres ainsi&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;this&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;._window = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;GameHost&lt;/span&gt;(&lt;span style="color:blue;"&gt;this&lt;/span&gt;);&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;this&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;._window.Closed += &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;EventHandler&lt;/span&gt;(_window_Closed);&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;this&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;._tickGenerator = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;DispatcherTimer&lt;/span&gt;();&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;this&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;._tickGenerator.Tick += &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;EventHandler&lt;/span&gt;(_tickGenerator_Tick);&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Il commence par cr&amp;eacute;er la fen&amp;ecirc;tre qui sera situ&amp;eacute;e au dessus de lui, et enregistre l&amp;rsquo;&amp;eacute;v&amp;eacute;nement Closed afin de fermer la sc&amp;egrave;ne 3D. L&amp;rsquo;object de type DispatcherTimer est utilis&amp;eacute; pour la boucle de jeu et permet donc d&amp;rsquo;appeler de mani&amp;egrave;re r&amp;eacute;guli&amp;egrave;re les m&amp;eacute;thodes Update et Draw. Sa v&amp;eacute;locit&amp;eacute; d&amp;eacute;pend de la propri&amp;eacute;t&amp;eacute; IsFixedTimeStep.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Dernier &amp;eacute;l&amp;eacute;ment important, l&amp;rsquo;enregistrement de l&amp;rsquo;&amp;eacute;v&amp;eacute;nement IsVisibleChange&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;this&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;.IsVisibleChanged += &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;DependencyPropertyChangedEventHandler&lt;/span&gt;(GameCanvas_IsVisibleChanged);&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;L&amp;rsquo;activation du DispatcherTimer est en fonction de cette visibilit&amp;eacute;.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;La classe GameHost est tout aussi simple. Elle cr&amp;eacute;&amp;eacute; une fen&amp;ecirc;tre sans bordure, invisible sur la barre des t&amp;acirc;ches et qui enregistre l&amp;rsquo;&amp;eacute;v&amp;eacute;nement SizeChanged du panel Xna et LocationChanged de la fen&amp;ecirc;tre de plus haut niveau. Ces deux &amp;eacute;v&amp;eacute;nements lui permettent de toujours &amp;ecirc;tre au dessus du panel Xna en effectuant un appel &amp;agrave; la m&amp;eacute;thode UpdateBounds&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;public&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; UpdateBounds()&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (&lt;span style="color:blue;"&gt;this&lt;/span&gt;.IsVisible)&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;GeneralTransform&lt;/span&gt; gt = &lt;span style="color:blue;"&gt;this&lt;/span&gt;.game.TransformToVisual(&lt;span style="color:blue;"&gt;this&lt;/span&gt;.TopLevelWindow);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.Width = &lt;span style="color:blue;"&gt;this&lt;/span&gt;.game.ActualWidth;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.Height = &lt;span style="color:blue;"&gt;this&lt;/span&gt;.game.ActualHeight;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.Left = &lt;span style="color:blue;"&gt;this&lt;/span&gt;.TopLevelWindow.Left + gt.Transform(&lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Point&lt;/span&gt;(0, 0)).X;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.Top = &lt;span style="color:blue;"&gt;this&lt;/span&gt;.TopLevelWindow.Top + gt.Transform(&lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Point&lt;/span&gt;(0, 0)).Y;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Cette m&amp;eacute;thode d&amp;eacute;termine la position de la fen&amp;ecirc;tre courante en se basant sur la fen&amp;ecirc;tre de plus haut niveau (la fen&amp;ecirc;tre contenant le panel Xna de la classe Game). Elle lui affecte en outre, la m&amp;ecirc;me largeur et hauteur que le panel Xna.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;L&amp;agrave; encore la fen&amp;ecirc;tre s&amp;rsquo;enregistre sur l&amp;rsquo;&amp;eacute;v&amp;eacute;nement IsVisibleChange de ce dernier afin de se rendre visible ou non.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Premier Exemple&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Nous baserons nos exemple sur le framework AvalonDock (&lt;/span&gt;&lt;a href="http://www.codeplex.com/AvalonDock"&gt;&lt;span style="font-family:Calibri;color:#0000ff;font-size:small;"&gt;http://www.codeplex.com/AvalonDock&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;), un moyen efficace de cr&amp;eacute;er des interfaces dockable &amp;agrave; la Visual Studio tr&amp;egrave;s facilement. Un moyen aussi pour nous de montrer la puissance et la simplicit&amp;eacute; de notre syst&amp;egrave;me dans des interfaces WPF tr&amp;egrave;s avanc&amp;eacute;es.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Notre solution contient donc un projet nomm&amp;eacute; Demo qui correspond au projet d&amp;rsquo;exemple d&amp;rsquo;AvanlonDock l&amp;eacute;g&amp;egrave;rement modifi&amp;eacute;. Nous avons ajout&amp;eacute; une classe h&amp;eacute;ritant de Game qui va afficher un cube tournant sur lui-m&amp;ecirc;me.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Cette classe a tout simplement &amp;eacute;t&amp;eacute; extraite d&amp;rsquo;une application Xna pur pour &amp;ecirc;tre ajout&amp;eacute; dans ce projet, et ce, sans aucune modification (ou presque)&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;public&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt; &lt;span style="color:blue;"&gt;class&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;RotatingCubeGame&lt;/span&gt; : Arcane.Xna.Presentation.&lt;span style="color:#2b91af;"&gt;Game&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#region&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt; Fields&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;Arcane.Xna.Presentation.&lt;span style="color:#2b91af;"&gt;GraphicsDeviceManager&lt;/span&gt; graphics;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;SpriteBatch&lt;/span&gt; spriteBatch;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;BasicEffect&lt;/span&gt; effect;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;VertexPositionColor&lt;/span&gt;[] vertices;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt; position = &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;.Zero;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt; size = &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;.One;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;VertexBuffer&lt;/span&gt; vertexBuffer;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;IndexBuffer&lt;/span&gt; indexBuffer;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#endregion&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#region&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt; Constructors&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; RotatingCubeGame()&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (!(System.ComponentModel.&lt;span style="color:#2b91af;"&gt;DesignerProperties&lt;/span&gt;.GetIsInDesignMode(&lt;span style="color:blue;"&gt;this&lt;/span&gt;)))&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;graphics = &lt;span style="color:blue;"&gt;new&lt;/span&gt; Arcane.Xna.Presentation.&lt;span style="color:#2b91af;"&gt;GraphicsDeviceManager&lt;/span&gt;(&lt;span style="color:blue;"&gt;this&lt;/span&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;Content.RootDirectory = &lt;span style="color:#a31515;"&gt;&amp;quot;Content&amp;quot;&lt;/span&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;#endregion&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;summary&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; Allows the game to perform any initialization it needs to before starting to run.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; This is where it can query for any required services and load any non-graphic&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; related content.&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;Calling base.Initialize will enumerate through any components&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; and initialize them as well.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;protected&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;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&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;base&lt;/span&gt;.Initialize();&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// TODO: Add your initialization logic here&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.graphics.IsFullScreen = &lt;span style="color:blue;"&gt;false&lt;/span&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.graphics.PreferredBackBufferWidth = 800;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.graphics.PreferredBackBufferHeight = 600;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.graphics.ApplyChanges();&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.Window.Title = &lt;span style="color:#a31515;"&gt;&amp;quot;&amp;quot;&lt;/span&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.InitializeVertices();&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.InitializeIndices();&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; InitializeVertices()&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;VertexPositionColor&lt;/span&gt;[ 8 ];&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[0].Position = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;(-10f, -10f, 10f);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[0].Color = &lt;span style="color:#2b91af;"&gt;Color&lt;/span&gt;.Yellow;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[1].Position = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;(-10f, 10f, 10f);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[1].Color = &lt;span style="color:#2b91af;"&gt;Color&lt;/span&gt;.Green;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[2].Position = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;(10f, 10f, 10f);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[2].Color = &lt;span style="color:#2b91af;"&gt;Color&lt;/span&gt;.Blue;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[3].Position = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;(10f, -10f, 10f);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[3].Color = &lt;span style="color:#2b91af;"&gt;Color&lt;/span&gt;.Black;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[4].Position = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;(10f, 10f, -10f);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[4].Color = &lt;span style="color:#2b91af;"&gt;Color&lt;/span&gt;.Red;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[5].Position = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;(10f, -10f, -10f);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[5].Color = &lt;span style="color:#2b91af;"&gt;Color&lt;/span&gt;.Violet;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[&amp;nbsp;6 ].Position = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;(-10f, -10f, -10f);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[ 6 ].Color = &lt;span style="color:#2b91af;"&gt;Color&lt;/span&gt;.Orange;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[7].Position = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;(-10f, 10f, -10f);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;vertices[7].Color = &lt;span style="color:#2b91af;"&gt;Color&lt;/span&gt;.Gray;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.vertexBuffer = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;VertexBuffer&lt;/span&gt;(&lt;span style="color:blue;"&gt;this&lt;/span&gt;.graphics.GraphicsDevice, &lt;span style="color:blue;"&gt;typeof&lt;/span&gt;(&lt;span style="color:#2b91af;"&gt;VertexPositionColor&lt;/span&gt;), 8, &lt;span style="color:#2b91af;"&gt;BufferUsage&lt;/span&gt;.WriteOnly);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.vertexBuffer.SetData(vertices);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;private&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; InitializeIndices()&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;short&lt;/span&gt;[] indices = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:blue;"&gt;short&lt;/span&gt;[36]{&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;0,1,2, &lt;span style="color:green;"&gt;//face devant&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;0,2,3,&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&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;3,2,4, &lt;span style="color:green;"&gt;//face droite&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&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;3,4,5,&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&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;5,4,7, &lt;span style="color:green;"&gt;//face arri&amp;egrave;re&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&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;5,7,6,&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&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;6,7,1, &lt;span style="color:green;"&gt;//face gauche&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&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;6,1,0,&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&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;6,0,3, &lt;span style="color:green;"&gt;//face bas&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;6,3,5,&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;1,7,4, &lt;span style="color:green;"&gt;//face haut&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;1,4,2};&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.indexBuffer = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;IndexBuffer&lt;/span&gt;(&lt;span style="color:blue;"&gt;this&lt;/span&gt;.graphics.GraphicsDevice, &lt;span style="color:blue;"&gt;typeof&lt;/span&gt;(&lt;span style="color:blue;"&gt;short&lt;/span&gt;), 36, &lt;span style="color:#2b91af;"&gt;BufferUsage&lt;/span&gt;.WriteOnly);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.indexBuffer.SetData(indices);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;summary&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; LoadContent will be called once per game and is the place to load&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; all of your content.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;protected&lt;/span&gt; &lt;span style="color:blue;"&gt;override&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; LoadContent()&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// Create a new SpriteBatch, which can be used to draw textures.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;spriteBatch = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;SpriteBatch&lt;/span&gt;(GraphicsDevice);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// TODO: use this.Content to load your game content here&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.effect = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;BasicEffect&lt;/span&gt;(graphics.GraphicsDevice, &lt;span style="color:blue;"&gt;null&lt;/span&gt;);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.effect.View = (&lt;span style="color:#2b91af;"&gt;Matrix&lt;/span&gt;.CreateLookAt(&lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;(20, 30, -50), &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;.Zero, &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;.Up));&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.effect.Projection = (&lt;span style="color:#2b91af;"&gt;Matrix&lt;/span&gt;.CreatePerspectiveFieldOfView(&lt;span style="color:#2b91af;"&gt;MathHelper&lt;/span&gt;.PiOver4, &lt;span style="color:blue;"&gt;this&lt;/span&gt;.GraphicsDevice.Viewport.AspectRatio, 0.1f, 100f));&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.effect.VertexColorEnabled = &lt;span style="color:blue;"&gt;true&lt;/span&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;summary&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; Allows the game to run logic such as updating the world,&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; checking for collisions, gathering input and playing audio.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;param name=&amp;quot;gameTime&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="color:green;"&gt;Provides a snapshot of timing values.&lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;/param&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;protected&lt;/span&gt; &lt;span style="color:blue;"&gt;override&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; Update(&lt;span style="color:#2b91af;"&gt;GameTime&lt;/span&gt; gameTime)&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (&lt;span style="color:#2b91af;"&gt;Keyboard&lt;/span&gt;.GetState()[&lt;span style="color:#2b91af;"&gt;Keys&lt;/span&gt;.Up] == &lt;span style="color:#2b91af;"&gt;KeyState&lt;/span&gt;.Down)&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;position += &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;.Up;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (&lt;span style="color:#2b91af;"&gt;Keyboard&lt;/span&gt;.GetState()[&lt;span style="color:#2b91af;"&gt;Keys&lt;/span&gt;.Down] == &lt;span style="color:#2b91af;"&gt;KeyState&lt;/span&gt;.Down)&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;position += &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;.Down;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (&lt;span style="color:#2b91af;"&gt;Keyboard&lt;/span&gt;.GetState()[&lt;span style="color:#2b91af;"&gt;Keys&lt;/span&gt;.Left] == &lt;span style="color:#2b91af;"&gt;KeyState&lt;/span&gt;.Down)&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;position += &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;.Left;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (&lt;span style="color:#2b91af;"&gt;Keyboard&lt;/span&gt;.GetState()[&lt;span style="color:#2b91af;"&gt;Keys&lt;/span&gt;.Right] == &lt;span style="color:#2b91af;"&gt;KeyState&lt;/span&gt;.Down)&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;position += &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;.Right;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (&lt;span style="color:#2b91af;"&gt;Keyboard&lt;/span&gt;.GetState()[&lt;span style="color:#2b91af;"&gt;Keys&lt;/span&gt;.PageUp] == &lt;span style="color:#2b91af;"&gt;KeyState&lt;/span&gt;.Down)&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;size += &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;(0.1f, 0.1f, 0.1f);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (&lt;span style="color:#2b91af;"&gt;Keyboard&lt;/span&gt;.GetState()[&lt;span style="color:#2b91af;"&gt;Keys&lt;/span&gt;.PageDown] == &lt;span style="color:#2b91af;"&gt;KeyState&lt;/span&gt;.Down)&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;size -= &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;Vector3&lt;/span&gt;(0.1f, 0.1f, 0.1f);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// Allows the default game to exit on Xbox 360 and Windows&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (&lt;span style="color:#2b91af;"&gt;GamePad&lt;/span&gt;.GetState(&lt;span style="color:#2b91af;"&gt;PlayerIndex&lt;/span&gt;.One).Buttons.Back == &lt;span style="color:#2b91af;"&gt;ButtonState&lt;/span&gt;.Pressed)&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&lt;br /&gt;&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;this&lt;/span&gt;.Exit();&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;float&lt;/span&gt; fAngle = (&lt;span style="color:blue;"&gt;float&lt;/span&gt;)gameTime.TotalGameTime.TotalSeconds;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;color:green;font-size:10pt;mso-no-proof:yes;"&gt;//la transformation en elle m&amp;ecirc;me&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:#2b91af;"&gt;Matrix&lt;/span&gt; world = &lt;span style="color:#2b91af;"&gt;Matrix&lt;/span&gt;.CreateRotationY(fAngle) * &lt;span style="color:#2b91af;"&gt;Matrix&lt;/span&gt;.CreateRotationX(fAngle)&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;* &lt;span style="color:#2b91af;"&gt;Matrix&lt;/span&gt;.CreateScale(size)&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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:#2b91af;"&gt;Matrix&lt;/span&gt;.CreateTranslation(position);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.effect.World = (world);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;base&lt;/span&gt;.Update(gameTime);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;summary&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; This is called when the game should draw itself.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;/summary&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:gray;"&gt;///&lt;/span&gt;&lt;span style="color:green;"&gt; &lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;param name=&amp;quot;gameTime&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="color:green;"&gt;Provides a snapshot of timing values.&lt;/span&gt;&lt;span style="color:gray;"&gt;&amp;lt;/param&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;protected&lt;/span&gt; &lt;span style="color:blue;"&gt;override&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; Draw(&lt;span style="color:#2b91af;"&gt;GameTime&lt;/span&gt; gameTime)&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.graphics.GraphicsDevice.Vertices[0].SetSource(&lt;span style="color:blue;"&gt;this&lt;/span&gt;.vertexBuffer, 0, &lt;span style="color:#2b91af;"&gt;VertexPositionColor&lt;/span&gt;.SizeInBytes);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.graphics.GraphicsDevice.Indices = &lt;span style="color:blue;"&gt;this&lt;/span&gt;.indexBuffer;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.graphics.GraphicsDevice.VertexDeclaration = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;VertexDeclaration&lt;/span&gt;(&lt;span style="color:blue;"&gt;this&lt;/span&gt;.graphics.GraphicsDevice, &lt;span style="color:#2b91af;"&gt;VertexPositionColor&lt;/span&gt;.VertexElements);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;graphics.GraphicsDevice.Clear(&lt;span style="color:#2b91af;"&gt;Color&lt;/span&gt;.CornflowerBlue);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:green;"&gt;// TODO: Add your drawing code here&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;.effect.Begin();&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;foreach&lt;/span&gt; (&lt;span style="color:#2b91af;"&gt;EffectPass&lt;/span&gt; pass &lt;span style="color:blue;"&gt;in&lt;/span&gt; effect.CurrentTechnique.Passes)&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;pass.Begin();&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;this&lt;/span&gt;.graphics.GraphicsDevice.DrawIndexedPrimitives(&lt;span style="color:#2b91af;"&gt;PrimitiveType&lt;/span&gt;.TriangleList, 0, 0, 8, 0, 12);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;pass.End();&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;effect.End();&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;base&lt;/span&gt;.Draw(gameTime);&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;}&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;}&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Rien de bien compliqu&amp;eacute; ici (le code est extrait de &lt;a target="_blank" href="http://msmvps.com/blogs/valentin/archive/2007/01/18/xna-tutorial-6-les-indices.aspx"&gt;l&amp;rsquo;article 6&lt;/a&gt;).&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;La premi&amp;egrave;re modification est de faire h&amp;eacute;riter la classe RotatingCubeGame de l&amp;rsquo;objet Game de notre assembly et non celle de l&amp;rsquo;assembly Microsoft.Xna.Framework.Game. La seconde modification consiste &amp;agrave; entourer les initialisations r&amp;eacute;alis&amp;eacute;es dans le constructeur de&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="mso-ansi-language:EN-US;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:courier new,courier;"&gt;System.ComponentModel.DesignerProperties.GetIsInDesignMode(this)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Afin de s&amp;rsquo;assurer que notre jeu ne sera pas en partie cr&amp;eacute;&amp;eacute; dans le designer de Visual Studio. Le reste est tr&amp;egrave;s simple. Nous avons juste remplac&amp;eacute; le contenu de chaque DockablePane dans le code Xaml de Window1 par un&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;color:#a31515;font-size:10pt;mso-no-proof:yes;"&gt;Demo&lt;/span&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;"&gt;:&lt;/span&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;color:#a31515;font-size:10pt;mso-no-proof:yes;"&gt;RotatingCubeGame&lt;/span&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;color:#a31515;font-size:10pt;mso-no-proof:yes;"&gt;Demo&lt;/span&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;"&gt;:&lt;/span&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;color:#a31515;font-size:10pt;mso-no-proof:yes;"&gt;RotatingCubeGame&lt;/span&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;"&gt;&amp;gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Le resultat nous donne&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="mso-fareast-language:FR;mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;a target="_blank" href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/5270.annexe3_2D00_4.png"&gt;&lt;img height="444" width="619" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/5270.annexe3_2D00_4.png" border="0" style="border:2px solid black;vertical-align:middle;" alt="" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Bien &amp;eacute;videmment notre syst&amp;egrave;me respecte les avantage d&amp;rsquo;AvalonDock en permettant un docking puissant&amp;nbsp;et ce, sans perturber nos sc&amp;egrave;ne 3D:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="mso-fareast-language:FR;mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;a target="_blank" href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/5282.annexe3_2D00_5.png"&gt;&lt;img height="904" width="612" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/5282.annexe3_2D00_5.png" border="0" style="vertical-align:middle;border:black 2px solid;" alt="" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Pas mal, mais on peut faire mieux.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Int&amp;eacute;gration de Widgets&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Pourquoi ne pas tenter d&amp;rsquo;afficher des widgets (bouton, label, Grid, Canvas, &amp;hellip;) dans notre sc&amp;egrave;ne 3D pour faire une int&amp;eacute;gration avec WPF de mani&amp;egrave;re parfaite. &lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Nous pourrions &amp;ecirc;tre tent&amp;eacute;s d&amp;rsquo;ajouter ces &amp;eacute;l&amp;eacute;ments directement &amp;agrave; la fen&amp;ecirc;tre GameHost. Mais &amp;agrave; l&amp;rsquo;affichage nous aurions des probl&amp;egrave;mes de scintillement (deux types d&amp;rsquo;affichages diff&amp;eacute;rents vectoriel et 3D &amp;agrave; r&amp;eacute;aliser sur une m&amp;ecirc;me zone clip n&amp;rsquo;est pas forcement bon&amp;hellip;). Nous allons donc simplement rajouter une nouvelle fen&amp;ecirc;tre au dessus de la fen&amp;ecirc;tre existante, sans bordure elle aussi&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="mso-fareast-language:FR;mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;img height="509" width="617" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/4300.annexe3_2D00_6.png" border="0" style="vertical-align:middle;border:black 2px solid;" alt="" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Son contenu sera directement reli&amp;eacute; au contenu du panel Xna (le Canvas). La classe GameHost contiendra d&amp;eacute;sormais un nouveau membre nomm&amp;eacute; _frontWindow de type Window. Elle exposera en internal une propri&amp;eacute;t&amp;eacute; nomm&amp;eacute;e WPFHost donnant acc&amp;egrave;s au Content de cette window&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;internal&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt; &lt;span style="color:blue;"&gt;object&lt;/span&gt; WPFHost&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;get&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;return&lt;/span&gt; &lt;span style="color:blue;"&gt;this&lt;/span&gt;._frontWindow.Content;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;set&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;this&lt;/span&gt;._frontWindow.Content = &lt;span style="color:blue;"&gt;value&lt;/span&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;La classe Game exposera elle-aussi&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;le Content de cette window &amp;agrave; l&amp;rsquo;aide d&amp;rsquo;une propri&amp;eacute;t&amp;eacute; portant le&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;m&amp;ecirc;me nom&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;color:blue;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;public&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt; &lt;span style="color:blue;"&gt;object&lt;/span&gt; WPFHost&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;get&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (!(System.ComponentModel.&lt;span style="color:#2b91af;"&gt;DesignerProperties&lt;/span&gt;.GetIsInDesignMode(&lt;span style="color:blue;"&gt;this&lt;/span&gt;)))&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;return&lt;/span&gt; &lt;span style="color:blue;"&gt;this&lt;/span&gt;.Window.WPFHost;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;else&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;return&lt;/span&gt; (&lt;span style="color:blue;"&gt;base&lt;/span&gt;.Children[0] &lt;span style="color:blue;"&gt;as&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;ContentControl&lt;/span&gt;).Content;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;set&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (!(System.ComponentModel.&lt;span style="color:#2b91af;"&gt;DesignerProperties&lt;/span&gt;.GetIsInDesignMode(&lt;span style="color:blue;"&gt;this&lt;/span&gt;)))&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;this&lt;/span&gt;.Window.WPFHost = &lt;span style="color:blue;"&gt;value&lt;/span&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color:blue;"&gt;else&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&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;base&lt;/span&gt;.Children[0] &lt;span style="color:blue;"&gt;as&lt;/span&gt; &lt;span style="color:#2b91af;"&gt;ContentControl&lt;/span&gt;).Content = &lt;span style="color:blue;"&gt;value&lt;/span&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span lang="EN-US" style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;mso-ansi-language:EN-US;"&gt;&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;}&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Cette propri&amp;eacute;t&amp;eacute; d&amp;eacute;termine si nous sommes en mode design (sous visual studio) ou en mode runtime. En mode design nous utilisons le fonctionnement classique du Canvas dont h&amp;eacute;rite notre classe Game, en mode runtime nous ciblons directement la window. Cela nous permet en mode design de pouvoir voir l&amp;rsquo;UI de notre contr&amp;ocirc;le et de pouvoir la modifier &amp;agrave; la souris.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;En outre&lt;span style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/span&gt;nous marquons la classe Game de l&amp;rsquo;attribut&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="line-height:115%;font-family:&amp;#39;Courier New&amp;#39;;font-size:10pt;mso-no-proof:yes;"&gt;[System.Windows.Markup.&lt;span style="color:#2b91af;"&gt;ContentProperty&lt;/span&gt;(&lt;span style="color:#a31515;"&gt;&amp;quot;WPFHost&amp;quot;&lt;/span&gt;)]&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Permettant de mettre du contenu direct en Xaml&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="mso-fareast-language:FR;mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;img height="652" width="575" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/0005.annexe3_2D00_7.png" border="0" style="border:2px solid black;vertical-align:middle;" alt="" /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;La page Window1.xaml a &amp;eacute;t&amp;eacute; modifi&amp;eacute;e pour rajouter du contenu &amp;agrave; plusieurs RotatingCubeGame comme le montre l&amp;rsquo;image ci-dessus. Nous avons ajout&amp;eacute; des shapes et paths purs pour reproduire le personnage orange et jaune symbolisant le Xna, des boutons et label li&amp;eacute;s par des &amp;eacute;v&amp;eacute;nements et un FlowDocument avec scrolling.&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal;"&gt;&lt;span style="font-size:small;"&gt;&lt;span style="font-family:Calibri;"&gt;Conclusion&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;L&amp;rsquo;assembly Arcane.Xna.Presentation pr&amp;eacute;sente un moyen simple d&amp;rsquo;int&amp;eacute;grer de mani&amp;egrave;re professionnel du Xna &amp;agrave; ses applications WPF. Le seul vrai d&amp;eacute;faut qu&amp;rsquo;on peut lui trouver est la cr&amp;eacute;ation de deux fen&amp;ecirc;tre par panel Xna. Il faut savoir que le nombre de fen&amp;ecirc;tre affichable sous Windows est malheureusement limit&amp;eacute;. Le r&amp;eacute;sultat fonctionne tout de m&amp;ecirc;me parfaitement et peut &amp;ecirc;tre utilis&amp;eacute; pour des applications professionnelles&amp;nbsp;:&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="mso-fareast-language:FR;mso-no-proof:yes;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;a target="_blank" href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/2148.annexe3_2D00_8.png"&gt;&lt;img height="480" width="640" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/2148.annexe3_2D00_8.png" border="0" style="border:2px solid black;vertical-align:middle;" alt="" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Vous pouvez t&amp;eacute;l&amp;eacute;charger le code &lt;a target="_blank" href="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/valentin.articles.CoursXna.annexe3/7026.XnaInWpf.zip"&gt;ici&lt;/a&gt;.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;A bientôt sur ce Blog !&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;&lt;span style="font-family:Calibri;font-size:small;"&gt;Valentin Billotte&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</description></item><item><title>WPF Charting is already available in WPF Toolkit of June 2009</title><link>http://msmvps.com/blogs/nunogodinho/archive/2009/07/06/wpf-charting-is-already-available-in-wpf-toolkit-of-june-2009.aspx</link><pubDate>Mon, 06 Jul 2009 05:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1698498</guid><dc:creator>NunoGodinho</dc:creator><description>&lt;p&gt;The long wait has finished as the WPF Charting was made available on the last WPF Toolkit release of June 2009 and now we can use all those great charts that were available for Silverlight, now also in WPF.&lt;/p&gt;  &lt;p&gt;You can know more about this &lt;a href="http://blogs.msdn.com/delay/archive/2009/06/25/wpf-charting-it-s-official-june-2009-release-of-the-wpf-toolkit-is-now-available.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Work with the taskbar of Windows 7 in WPF applications</title><link>http://msmvps.com/blogs/sergun/archive/2009/06/13/work-with-the-taskbar-of-windows-7-in-wpf-applications.aspx</link><pubDate>Sat, 13 Jun 2009 05:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1694956</guid><dc:creator>Sergun</dc:creator><description>&lt;p&gt;&lt;img style="border-right-width:0px;display:inline;border-top-width:0px;border-bottom-width:0px;margin-left:0px;border-left-width:0px;margin-right:0px;" title="Windows 7 +1" border="0" alt="Windows 7 +1" align="right" src="http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/sergun.metablogapi/4380.1_5F00_4FEA9DE6.png" width="175" height="49" /&gt;Recently I have published a series of articles that has been devoted to possibilities of Windows 7 for developers to work with the task panel. I have received a large quantity of responses for this time. Thanks you very much for it. That is interesting, questions were absolutely various subjects. However, the most part of questions was on a theme of use of similar functionality in WPF applications. Really, in the majority of examples I have lost sight WPF applications. I will try to compensate this defect here.&lt;/p&gt;  &lt;p&gt;Really, use of these possibilities in WPF applications not strongly differs from their implementation in WinForms. As is known, for use of possibilities of the task panel of Windows 7 we used WindowsFormsExtensions static class in which to contain extension-methods for Form class (form representation in Windows Forms). Unfortunately, in.NET Interop Sample Library there is no have similar class for WPF applications. However it is completely not difficult to create it independently.&lt;/p&gt;  &lt;p&gt;If to look at WindowsFormsExtensions class it becomes clear, that all calls are forwarded to Windows7Taskbar class which for form identification is used Handle of window. In a case with Windows Forms the form has property Handle which returns the necessary value. The first task is to receive handle of WPF window. Unfortunately, WPF windows do not have Handle property. However, it is possible to take advantage of WindowInteropHelper class and to receive this information. For this purpose I have made one more method which returns Handle of WPF-window.&lt;/p&gt;  &lt;div id="codeSnippetWrapper"&gt;   &lt;div style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;" id="codeSnippet"&gt;     &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#0000ff;"&gt;private&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;static&lt;/span&gt; IntPtr GetWindowHandle(Window window)&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;{&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    &lt;span style="color:#0000ff;"&gt;return&lt;/span&gt; (&lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; WindowInteropHelper(window)).Handle;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;}&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;Further in all extension methods it is necessary to change parametre type (type to which it is applied extension method) from Form to Window. After that the majority of possibilities are already accessible to WPF-applications.&lt;/p&gt;

&lt;p&gt;Other problem at work with the task panel of Windows 7 is that in some situations it is required to intercept Windows messages which come to a current window. In Windows Forms for these purposes it was possible to override WndProc method and in it to catch all necessary messages.&lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;div style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;" id="codeSnippet"&gt;
    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#0000ff;"&gt;protected&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;override&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;void&lt;/span&gt; WndProc(&lt;span style="color:#0000ff;"&gt;ref&lt;/span&gt; Message m)&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;{&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    &lt;span style="color:#0000ff;"&gt;if&lt;/span&gt; (m.Msg == Windows7Taskbar.TaskbarButtonCreatedMessage)&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    {&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;        &lt;span style="color:#008000;"&gt;// ...&lt;/span&gt;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    }&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&amp;#160;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    &lt;span style="color:#0000ff;"&gt;base&lt;/span&gt;.WndProc(&lt;span style="color:#0000ff;"&gt;ref&lt;/span&gt; m);&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;}&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;Unfortunately, for WPF windows of such method is not present. However, in WPF application it is possible to take advantage of HwndSource object and to add interception of Windows messages through it. &lt;/p&gt;

&lt;div id="codeSnippetWrapper"&gt;
  &lt;div style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;" id="codeSnippet"&gt;
    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#0000ff;"&gt;private&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;void&lt;/span&gt; Window_Loaded(&lt;span style="color:#0000ff;"&gt;object&lt;/span&gt; sender, RoutedEventArgs e)&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;{&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    HwndSource.FromHwnd(&lt;span style="color:#0000ff;"&gt;new&lt;/span&gt; WindowInteropHelper(&lt;span style="color:#0000ff;"&gt;this&lt;/span&gt;).Handle).AddHook(WndProc);&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;}&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&amp;#160;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;&lt;span style="color:#0000ff;"&gt;private&lt;/span&gt; IntPtr WndProc(IntPtr hwnd, &lt;span style="color:#0000ff;"&gt;int&lt;/span&gt; msg, IntPtr wParam, IntPtr lParam, &lt;span style="color:#0000ff;"&gt;ref&lt;/span&gt; &lt;span style="color:#0000ff;"&gt;bool&lt;/span&gt; handled)&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;{&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    &lt;span style="color:#0000ff;"&gt;if&lt;/span&gt; (msg == WM_DWMSENDICONICLIVEPREVIEWBITMAP)&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    {&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;        &lt;span style="color:#008000;"&gt;// ...&lt;/span&gt;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    }&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:#f4f4f4;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;    &lt;span style="color:#0000ff;"&gt;return&lt;/span&gt; IntPtr.Zero;&lt;/pre&gt;


    &lt;pre style="border-bottom-style:none;text-align:left;padding-bottom:0px;line-height:12pt;border-right-style:none;background-color:white;margin:0em;padding-left:0px;width:100%;padding-right:0px;font-family:&amp;#39;Courier New&amp;#39;, courier, monospace;direction:ltr;border-top-style:none;color:black;font-size:8pt;border-left-style:none;overflow:visible;padding-top:0px;"&gt;}&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;

&lt;p&gt;In other the usage of possibilities of the task panel of Windows 7 in WPF applications is implemented similarly Windows Forms. &lt;/p&gt;

&lt;p&gt;Sample applications:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a title="Taskbar-Progress.zip" href="http://weblogs.asp.net/blogs/sergeyzwezdin/taskbar/Taskbar-Progress.zip"&gt;Taskbar-Progress.zip&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a title="Taskbar-ThumbButtons.zip" href="http://weblogs.asp.net/blogs/sergeyzwezdin/taskbar/Taskbar-ThumbButtons.zip"&gt;Taskbar-ThumbButtons.zip&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a title="Taskbar-Icons.zip" href="http://weblogs.asp.net/blogs/sergeyzwezdin/taskbar/Taskbar-Icons.zip"&gt;Taskbar-Icons.zip&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a title="Taskbar-CustomIcons.zip" href="http://weblogs.asp.net/blogs/sergeyzwezdin/taskbar/Taskbar-CustomIcons.zip"&gt;Taskbar-CustomIcons.zip&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a title="Taskbar-AppId.zip" href="http://weblogs.asp.net/blogs/sergeyzwezdin/taskbar/Taskbar-AppId.zip"&gt;Taskbar-AppId.zip&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a title="Taskbar-ThumbnailClip.zip" href="http://weblogs.asp.net/blogs/sergeyzwezdin/taskbar/Taskbar-ThumbnailClip.zip"&gt;Taskbar-ThumbnailClip.zip&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a title="Taskbar-IconicThumbnail.zip" href="http://weblogs.asp.net/blogs/sergeyzwezdin/taskbar/Taskbar-IconicThumbnail.zip"&gt;Taskbar-IconicThumbnail.zip&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a title="Taskbar-PeekBitmap.zip" href="http://weblogs.asp.net/blogs/sergeyzwezdin/taskbar/Taskbar-PeekBitmap.zip"&gt;Taskbar-PeekBitmap.zip&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a title="Taskbar-JumpLists.zip" href="http://weblogs.asp.net/blogs/sergeyzwezdin/taskbar/Taskbar-JumpLists.zip"&gt;Taskbar-JumpLists.zip&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>MIX’09 – Reviewing – Future of Expression Blend</title><link>http://msmvps.com/blogs/nunogodinho/archive/2009/06/08/mix-09-reviewing-future-of-expression-blend.aspx</link><pubDate>Mon, 08 Jun 2009 05:00:00 GMT</pubDate><guid isPermaLink="false">d67277c4-116b-43f1-b688-e9ef184ea916:1694547</guid><dc:creator>NunoGodinho</dc:creator><description>&lt;p&gt;Douglas Olson – General Manager&lt;/p&gt;  &lt;p&gt;Christian Schormann – Director, Program Manager&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Expression Mission&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Enable professional designers to create great &lt;em&gt;UX&lt;/em&gt; with &lt;em&gt;better productivity &lt;/em&gt;at &lt;em&gt;lower costs.&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;Help integrate design and designers into the process of software creation &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Expression Blend 3 Goals&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Enable early-stage design &amp;amp; prototyping (SketchFlow)      &lt;ul&gt;       &lt;li&gt;Created to address issues felt at the start of the software design process:          &lt;ul&gt;           &lt;li&gt;Top-down &amp;amp; bottom-ups design lets you experiments with ideas &lt;/li&gt;            &lt;li&gt;SketchFlow Player lets you try your design at any time &lt;/li&gt;            &lt;li&gt;Facilitate communication of design ideas &lt;/li&gt;            &lt;li&gt;Easy to gather, evaluate and use stakeholders feedback &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;Blend Elements          &lt;ul&gt;           &lt;li&gt;SketchFlow Application Flow              &lt;ul&gt;               &lt;li&gt;Important to think on pages like whiteboards to sketch, insert elements, and all what you normally do. &lt;/li&gt;             &lt;/ul&gt;           &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;Usage of SketchStyles that will allow us to maintain the Sketchy style of the Design proposal, that is very important. &lt;/li&gt;        &lt;li&gt;Export to Word          &lt;ul&gt;           &lt;li&gt;Dumps all the SketckFlow elements like Application Flow, Pages, Comments and so on. &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Make visual design easier for designer      &lt;ul&gt;       &lt;li&gt;Embrace the Design Ecosystem          &lt;ul&gt;           &lt;li&gt;Adobe Photoshop &amp;amp; Illustrator file format import with extensive support for layers              &lt;ul&gt;               &lt;li&gt;Preview of Photoshop in Windows Explorer even without PhotoShop installed &lt;/li&gt;                &lt;li&gt;Possibility to choose what to do with each layer &lt;/li&gt;                &lt;li&gt;Blend informs if the font is default or not and gives the possibility to choose other font or even the same font by specifying the path of the font &lt;/li&gt;                &lt;li&gt;All content will be fully editable &lt;/li&gt;                &lt;li&gt;Layer Groups are also maintained &lt;/li&gt;                &lt;li&gt;By selecting an object we can make “Make into Control”                  &lt;ul&gt;                   &lt;li&gt;We choose the type of control we want to create &lt;/li&gt;                    &lt;li&gt;What’s done is:                      &lt;ul&gt;                       &lt;li&gt;A style is created in order for the control to became what was defined when we selected the elements to generate the control. &lt;/li&gt;                        &lt;li&gt;The control created will replace the selected element and gain the same properties that the original element had. &lt;/li&gt;                        &lt;li&gt;The style is associates to the control &lt;/li&gt;                        &lt;li&gt;&lt;strong&gt;Note: &lt;/strong&gt;There’s now a problem when the controls have different parts, like the Slider, and this will generate all but we need to wire-up the style to the correct parts &lt;/li&gt;                     &lt;/ul&gt;                   &lt;/li&gt;                 &lt;/ul&gt;               &lt;/li&gt;             &lt;/ul&gt;           &lt;/li&gt;            &lt;li&gt;Fast and Easy Control Skinning &lt;/li&gt;            &lt;li&gt;Enhanced editing of visual States &lt;/li&gt;            &lt;li&gt;Richer state transitions &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;Focus On Your Art          &lt;ul&gt;           &lt;li&gt;Redefined artboard interaction &lt;/li&gt;            &lt;li&gt;Better gradient editing &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Design with Data (Data Generation / Sampling inside Blend)      &lt;ul&gt;       &lt;li&gt;In the Data Tab we will have the possibility to define the DataSource structure that we want, and then just generate the data, and there are some templates like Phone Numbers, Strings, Dates, and so on. &lt;/li&gt;        &lt;li&gt;Make it easy to build a data-driven applications:          &lt;ul&gt;           &lt;li&gt;Sample Data:              &lt;ul&gt;               &lt;li&gt;Design applications without access to live data source &lt;/li&gt;                &lt;li&gt;Create sample data on the fly &lt;/li&gt;                &lt;li&gt;Populate with configurable random data &lt;/li&gt;             &lt;/ul&gt;           &lt;/li&gt;            &lt;li&gt;Drag and Drop Master-Detail creation &lt;/li&gt;            &lt;li&gt;Better user experience for data binding &lt;/li&gt;            &lt;li&gt;Design-time support for Silverlight 3 controls &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;There’s a Master and a Details Mode in the Data Tab that will make it easier to perform the Master-Details view          &lt;ul&gt;           &lt;li&gt;in this version of Blend we need to wire-up the Master and Detail elements, and this will not be needed in the last version of Blend &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Build interactivity without code (Behaviors)      &lt;ul&gt;       &lt;li&gt;Introduction to Behaviors:          &lt;ul&gt;           &lt;li&gt;Production-quality interactivity applied with Drag &amp;amp; Drop ease &lt;/li&gt;            &lt;li&gt;A design pattern for reusable interactivity &lt;/li&gt;            &lt;li&gt;Example: MouseGestureBehavior              &lt;ul&gt;               &lt;li&gt;You can define the gesture that will be used and make changes to the elements based on that gesture &lt;/li&gt;             &lt;/ul&gt;           &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Enable Source Code Control (Integration with Source Safe and TFS by default) – This is available also inside Expression Web      &lt;ul&gt;       &lt;li&gt;Design for Developers          &lt;ul&gt;           &lt;li&gt;Source Control              &lt;ul&gt;               &lt;li&gt;Visual Studio Team Foundation Server Support &lt;/li&gt;                &lt;li&gt;New editor with Intellisense for code &amp;amp; XAML &lt;/li&gt;             &lt;/ul&gt;           &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Support for Silverlight 3 &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;The same features are available for WPF and Silverlight in Blend 3.&lt;/p&gt;    &lt;p&gt;It’s important to avoid having final or high-definition elements in the Sketch design because customers will start looking in the direction of the rendering instead of the functionality.&lt;/p&gt;&lt;/blockquote&gt;</description></item></channel></rss>