<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html"> Lester's WPF blog</title><subtitle type="html">&lt;br&gt;&lt;b&gt;Simple, easy &amp;amp; beautiful&lt;/b&gt;
</subtitle><id>http://blogs.msdn.com/llobo/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/llobo/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2009-11-09T15:57:00Z</updated><entry><title>WPF Touch Basics</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/12/07/wpf-touch-basics.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="52150" href="http://blogs.msdn.com/llobo/attachment/9933654.ashx" /><id>http://blogs.msdn.com/llobo/archive/2009/12/07/wpf-touch-basics.aspx</id><published>2009-12-07T19:35:00Z</published><updated>2009-12-07T19:35:00Z</updated><content type="html">&lt;P mce_keep="true"&gt;In my previous posts, I briefly described the new WPF Touch feature. Was planning to get a more detailed post out but just couldnt get the time. Thankfully, Drake Campbell, one of our devs in Microsoft, sent me the following&amp;nbsp;post on the basics of WPF Touch.&amp;nbsp;Its a nice read.. So get started....&lt;/P&gt;
&lt;H1 style="TEXT-ALIGN: center; MARGIN: 24pt 0in 0pt" align=center&gt;&lt;FONT size=5&gt;&lt;FONT color=#376092&gt;&lt;FONT face=Cambria&gt;WPF Touch Basics&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/H1&gt;
&lt;H2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT size=4&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;Things to know before we start&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Understanding how RoutedEvents work might provide additional insight for this tutorial.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;http://msdn.microsoft.com/magazine/cc785480.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;What is Touch?&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Essentially it is your finger as the mouse.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;You can think of Touch as any action involving a single finger.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Inertia effects, dragging and throwing something, are not included as part of Touch.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Those are covered in Manipulations.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Touch events include: TouchDown, TouchUp, TouchMove, TouchEnter, TouchLeave, and other properties for checking if controls have touch focus.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT size=4&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;Goals&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The goal for this tutorial will be to create a small sample that will illustrate the use of the Touch events by using them to move a rectangle around.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN: 10pt 0in 0pt"&gt;&lt;FONT size=4&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;Let’s Get started&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Create a new WPF Application in VisualStudio2010 Beta2 or later and give it the name TouchSample.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Add a new User Control called TouchableThing to the project.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;In the TouchableThing.xaml file replace the Grid with a Canvas.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;We use a Canvas because the default layout is more desirable.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Then add a rectangle to the Canvas.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;See Fig 1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Fig 1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;UserControl&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Class&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="TouchSample.TouchableThing"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="http://schemas.microsoft.com/winfx/2006/xaml/presentation"&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt 0.5in; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="&lt;/SPAN&gt;&lt;A href="http://schemas.microsoft.com/winfx/2006/xaml" mce_href="http://schemas.microsoft.com/winfx/2006/xaml"&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;FONT color=#0000ff&gt;http://schemas.microsoft.com/winfx/2006/xaml&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;"&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt 0.5in; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;mc&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="http://schemas.openxmlformats.org/markup-compatibility/2006"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;d&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="http://schemas.microsoft.com/expression/blend/2008"&lt;/SPAN&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;mc&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;Ignorable&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="d"&lt;/SPAN&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;d&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;DesignHeight&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="300"&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; d&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;DesignWidth&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="300"&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Canvas&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Rectangle&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="BasicRect"&lt;/SPAN&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Width&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="200"&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Height&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="200"&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Fill&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="Orange"&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Stroke&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="Orange"&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; StrokeThickness&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="1"&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;IsManipulationEnabled&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="true"/&amp;gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Canvas&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;UserControl&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;We give the Rectangle a name so we can access it in the code behind and we make it large enough to hit test using a finger.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Notice the last property being set on the Rectangle, IsManipulationEnabled.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Setting this property to true enables the Rectangle, or any control with the property set to true, to bubble Touch events.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Since the Touch events&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;are bubbled they do not have to be handled by the control that has the property set to true.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The bubbling of the events is not as important when using Touch as it is when using Manipulations.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Now we have to add event listeners to some Touch events.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;I could have done this from xaml but I chose to do it in the code behind file.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The decision was arbitrary.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;In the TouchableThing.xaml.cs file find the constructor and add event listeners to the TouchDown and TouchMove events.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Using tab-completion in the editor will auto generate names and stubs for you.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;See Fig 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Fig 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;public&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: blue"&gt;partial&lt;/SPAN&gt; &lt;SPAN style="COLOR: blue"&gt;class&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;TouchableThing&lt;/SPAN&gt; : &lt;SPAN style="COLOR: #2b91af"&gt;UserControl&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: #2b91af"&gt;Point&lt;/SPAN&gt; lastTouchDownPoint;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;public&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; TouchableThing()&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;InitializeComponent();&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;this&lt;/SPAN&gt;.TouchDown += &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;EventHandler&lt;/SPAN&gt;&amp;lt;&lt;SPAN style="COLOR: #2b91af"&gt;TouchEventArgs&lt;/SPAN&gt;&amp;gt;(TouchableThing_TouchDown);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;this&lt;/SPAN&gt;.TouchMove += &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;EventHandler&lt;/SPAN&gt;&amp;lt;&lt;SPAN style="COLOR: #2b91af"&gt;TouchEventArgs&lt;/SPAN&gt;&amp;gt;(TouchableThing_TouchMove);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;private&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; TouchableThing_TouchDown(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: #2b91af"&gt;TouchEventArgs&lt;/SPAN&gt; e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;private&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; TouchableThing_TouchMove(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: #2b91af"&gt;TouchEventArgs&lt;/SPAN&gt; e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;I added a variable for storing the point where the user was last detected touching down to make life easier.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;It is also interesting to note that all the TouchEvents use the same type of event args.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;Now for the fun part.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;We have to decide on how we want to manage the coordinate space between the parent and the rectangle.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;We want to move the rectangle by dragging it with our finger.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Unfortunately physically setting the location of something in WPF is not considered best practice.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;We will use a TranslationTransform.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;We could also use a Matrix, but I think the TranslationTransform is easier.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;Either one is fine.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Since we avoid simply moving the object to a new location we will have to do some point translations .&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;If you have positioned the rectangle in a location other than the default on the Canvas, then you will also have to account for that in the value of &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;this&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;.lastTouchDownPoint&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Since the default position is (0,0) this is not a problem.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;See Fig 3.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Fig 3.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;private&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; TouchDownVersion2(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: #2b91af"&gt;TouchEventArgs&lt;/SPAN&gt; e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;this&lt;/SPAN&gt;.lastTouchDownPoint = e.GetTouchPoint(&lt;SPAN style="COLOR: blue"&gt;this&lt;/SPAN&gt;.BasicRect).Position;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;So what we have done here is get the touch point with respect to the Rectangle.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The GetTouchPoint method will perform the needed translations into the coordinate space of the target.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;This gives us a point in a coordinate space where the top left corner of the rectangle is 0,0.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Essentially this is the position of the finger inside the rectangle.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;We will take advantage of this in the TouchMove event handler.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;See Fig 4.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Fig 4.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;private&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: blue"&gt;void&lt;/SPAN&gt; TouchableThing_TouchMove(&lt;SPAN style="COLOR: blue"&gt;object&lt;/SPAN&gt; sender, &lt;SPAN style="COLOR: #2b91af"&gt;TouchEventArgs&lt;/SPAN&gt; e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #2b91af; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Point&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; currentPoint = e.GetTouchPoint(&lt;SPAN style="COLOR: blue"&gt;this&lt;/SPAN&gt;).Position;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; TEXT-INDENT: 0.5in; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;double&lt;/SPAN&gt; diffX = currentPoint.X - &lt;SPAN style="COLOR: blue"&gt;this&lt;/SPAN&gt;.lastTouchDownPoint.X;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;double&lt;/SPAN&gt; diffY = currentPoint.Y - &lt;SPAN style="COLOR: blue"&gt;this&lt;/SPAN&gt;.lastTouchDownPoint.Y;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: #2b91af"&gt;Math&lt;/SPAN&gt;.Abs(diffX) &amp;gt; &lt;SPAN style="COLOR: brown"&gt;0&lt;/SPAN&gt; || &lt;SPAN style="COLOR: #2b91af"&gt;Math&lt;/SPAN&gt;.Abs(diffY) &amp;gt; &lt;SPAN style="COLOR: brown"&gt;0&lt;/SPAN&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: #2b91af"&gt;TranslateTransform&lt;/SPAN&gt; transform = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;TranslateTransform&lt;/SPAN&gt;(diffX, diffY);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;this&lt;/SPAN&gt;.BasicRect.RenderTransform = transform;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;This event is similar to the MouseMove event in that it is called repeatedly until the TouchUp event is raised.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The first thing we want to do is get the current location for the Touch event with respect to the control handeling the event.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This is not intuitive since we captured the mouse point with respect to the rectangle in the TouchDown event.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The reason this works is we are simply tracking the change in movement.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;We want to put the rectangle exactly where the user’s finger is, but we have to account for where the user’s finger&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;went down inside the rectangle.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This is taken care of by the subtraction.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;The if statement is just checking if there were any changes in the x or y directions before doing any work.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;This is not the most performant code but is illustrates how to use the TouchEventArgs at a basic level.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Almost done.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;All we have to do is add the TouchableThing to the Window1.xaml.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;See Fig 5.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Fig 5.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Window&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Class&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="TouchSample.MainWindow"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="http://schemas.microsoft.com/winfx/2006/xaml/presentation"&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;x&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="http://schemas.microsoft.com/winfx/2006/xaml"&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Title&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="MainWindow"&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Height&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="350"&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Width&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="525"&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;custom&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="clr-namespace:TouchSample"&amp;gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;custom&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;TouchableThing&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Window&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Press F5 and enjoy.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;Stay tuned for the Manipulation walkthrough.&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/SPAN&gt;We will take the same rectangle and allow it to be scaled, rotated, translated, and inertial; using the Manipulation events.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/12/07/wpf-touch-basics.aspx&amp;amp;subject=WPF Touch Basics" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/12/07/wpf-touch-basics.aspx&amp;amp;phase=2&amp;amp;title=WPF Touch Basics" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/12/07/wpf-touch-basics.aspx&amp;amp;title=WPF Touch Basics" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=WPF Touch Basics &amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/12/07/wpf-touch-basics.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/12/07/wpf-touch-basics.aspx&amp;amp;title=WPF Touch Basics" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/12/07/wpf-touch-basics.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/12/07/wpf-touch-basics.aspx&amp;amp;title=WPF Touch Basics" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/12/07/wpf-touch-basics.aspx&amp;amp;title=WPF Touch Basics" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9933654" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term="WPF Touch" scheme="http://blogs.msdn.com/llobo/archive/tags/WPF+Touch/default.aspx" /></entry><entry><title>Concluding "New WPF Features" Series</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/25/concluding-new-wpf-features-series.aspx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/25/concluding-new-wpf-features-series.aspx</id><published>2009-11-25T14:07:00Z</published><updated>2009-11-25T14:07:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-ansi-language: EN" lang=EN&gt;This is the &lt;B&gt;&lt;I&gt;&lt;SPAN style="COLOR: #c00000"&gt;last&lt;/SPAN&gt;&lt;/I&gt;&lt;/B&gt; part of a &lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;SPAN style="COLOR: #dd4a21"&gt;series&lt;/SPAN&gt;&lt;/A&gt; on New WPF Features&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: EN; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri" lang=EN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&amp;nbsp;&amp;nbsp;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ansi-language: EN; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri" lang=EN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;The list of features covered here as part of this series:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol" lang=EN&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: EN" lang=EN&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/24/new-wpf-features-multitouch.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;MultiTouch&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol" lang=EN&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: EN" lang=EN&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;DatePicker\Calendar&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol" lang=EN&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: EN" lang=EN&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Datagrid&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol" lang=EN&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: EN" lang=EN&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Visual State Manager (VSM)&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol" lang=EN&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: EN" lang=EN&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/10/23/new-wpf-features-easing-functions.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;Easing Functions&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN class=MsoHyperlink&gt;&lt;SPAN style="FONT-FAMILY: Symbol; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none" lang=EN&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol" lang=EN&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;U&gt;&lt;SPAN style="mso-ansi-language: EN" lang=EN&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/10/23/new-wpf-features-jumplists.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;JumpLists&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="mso-ansi-language: EN" lang=EN&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; text-underline: none"&gt;&lt;SPAN style="mso-field-code: ' HYPERLINK 'http://blogs.msdn.com/llobo/archive/2009/11/17/new-wpf-features-pixelshader3-support.aspx''"&gt;&lt;U&gt;&lt;SPAN style="COLOR: blue; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/17/new-wpf-features-pixelshader3-support.aspx" mce_href="http://blogs.msdn.com/llobo/archive/2009/11/17/new-wpf-features-pixelshader3-support.aspx"&gt;Pixel Shader 3 support&lt;/A&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;/FONT&gt;&lt;/FONT&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;SPAN style="mso-field-code: ' HYPERLINK 'http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx''"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx" mce_href="http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx"&gt;&lt;U&gt;&lt;SPAN style="COLOR: blue; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;Cached Composition&lt;/SPAN&gt;&lt;/U&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;/FONT&gt;&lt;/FONT&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;SPAN style="mso-field-code: ' HYPERLINK 'http://blogs.msdn.com/llobo/archive/2009/11/06/new-wpf-features-full-trust-xbap-deployment.aspx''"&gt;&lt;U&gt;&lt;SPAN style="COLOR: blue; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/06/new-wpf-features-full-trust-xbap-deployment.aspx" mce_href="http://blogs.msdn.com/llobo/archive/2009/11/06/new-wpf-features-full-trust-xbap-deployment.aspx"&gt;Full trust Xbap Deployment&lt;/A&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;/FONT&gt;&lt;/FONT&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;SPAN style="mso-field-code: ' HYPERLINK 'http://blogs.msdn.com/llobo/archive/2009/11/02/new-wpf-feature-binding-to-dynamic-objects.aspx''"&gt;&lt;U&gt;&lt;SPAN style="COLOR: blue; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/02/new-wpf-feature-binding-to-dynamic-objects.aspx" mce_href="http://blogs.msdn.com/llobo/archive/2009/11/02/new-wpf-feature-binding-to-dynamic-objects.aspx"&gt;Binding to Dynamic Objects&lt;/A&gt;&lt;/SPAN&gt;&lt;/U&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt; &lt;/FONT&gt;&lt;/FONT&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/10/26/new-wpf-features-custom-speller-dictionary.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;Custom Speller Support&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/03/new-wpf-features-script-interop-in-xbap.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Script Interop in Xbap&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;UIA Virtualization&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/18/new-wpf-features-synchronizedinputpattern.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;UIA SynchronizedInputPattern&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/10/29/new-wpf-features-key-gesture-binding.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Input Key\Gesture Binding&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/10/21/new-wpf-features-textformattingmode-for-clear-text.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;TextFormattingMode&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/10/27/new-wpf-features-caretbrush-selectionbrush.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;CaretBrush&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/10/27/new-wpf-features-caretbrush-selectionbrush.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;SelectionBrush&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/04/new-wpf-features-bindable-run.aspx" mce_href="http://blogs.msdn.com/llobo/archive/2009/11/04/new-wpf-features-bindable-run.aspx"&gt;Bindable Run&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/10/28/new-wpf-features-cleartypehint.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;ClearTypeHint&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/10/30/new-wpf-features-layoutrounding.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;LayoutRounding&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpLast&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/12/new-wpf-features-updated-file-dialogs.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Updated File Dialogs&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;B&gt;&lt;SPAN style="COLOR: #c00000; TEXT-DECORATION: none; mso-ansi-language: EN; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; text-underline: none"&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;XAML 2009&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/05/xaml-2009-features-built-in-types.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Built-in Types&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/09/xaml-2009-features-node-loop-flexibility.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Node Loop Flexibility&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/11/xaml-2009-features-xaml-event-handling.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Event Handling&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/13/xaml-2009-features-name-references.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Named Object References&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/19/xaml-2009-features-generics-support.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;Generics Support&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpLast&gt;&lt;SPAN style="FONT-FAMILY: Symbol; COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol; text-underline: none"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: windowtext; TEXT-DECORATION: none; mso-ansi-language: EN; text-underline: none"&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/2009/11/20/xaml-2009-features-factorymethod-arguments.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;FONT size=3 face=Calibri&gt;FactoryMethod\x:Arguments&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;/SPAN&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9928128" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term=".NET 4" scheme="http://blogs.msdn.com/llobo/archive/tags/.NET+4/default.aspx" /></entry><entry><title>New WPF Features: MultiTouch</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/24/new-wpf-features-multitouch.aspx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/24/new-wpf-features-multitouch.aspx</id><published>2009-11-24T13:42:00Z</published><updated>2009-11-24T13:42:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;This is part of a &lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;FONT color=#dd4a21&gt;series&lt;/FONT&gt;&lt;/A&gt; on New WPF Features&lt;/SPAN&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;WPF supports multitouch API’s in .NET 4. You can have &lt;STRONG&gt;touch&lt;/STRONG&gt; and &lt;STRONG&gt;manipulation&lt;/STRONG&gt; operations on all the UI elements.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;For creating a touch based app, you would need to subscribe to the events: &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.touchdown(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.touchdown(VS.100).aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;TouchDown&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.touchenter%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.touchenter%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;TouchEnter&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.touchleave(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.touchleave(VS.100).aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;TouchLeave&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.touchmove(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.touchmove(VS.100).aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;TouchMove&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpLast&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.touchmove(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.touchmove(VS.100).aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;TouchUp&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3 face=Calibri&gt;The &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.input.toucheventargs_members%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.toucheventargs_members%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;TouchEventArgs&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt; class has some helpful API&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.input.toucheventargs.gettouchpoint%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.toucheventargs.gettouchpoint%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;GetTouchPoint&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt; - Returns the current position of the touch device relative to the specified element.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.input.toucheventargs.touchdevice%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.toucheventargs.touchdevice%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;TouchDevice&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt; - Gets the device that generated the event.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.input.inputeventargs.device%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.inputeventargs.device%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;Device&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt; - Gets the input device that initiated this event. (Inherited from &lt;/FONT&gt;&lt;A id=ctl00_MTCS_main_ctl96_ctl00_ctl09 href="http://msdn.microsoft.com/en-us/library/system.windows.input.inputeventargs%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.inputeventargs%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;InputEventArgs&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;.)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: none; tab-stops: .5in" class=MsoListBulletCxSpMiddle&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: none; tab-stops: .5in" class=MsoListBulletCxSpMiddle&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;To add manipulations, you first need to set the bool &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #c00000"&gt;IsManipulationEnabled&lt;/SPAN&gt; property. Once done you can now listen to the manipulation events&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.manipulationstarted(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.manipulationstarted(VS.100).aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;ManipulationStarted&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.manipulationdelta(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.manipulationdelta(VS.100).aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;ManipulationDelta&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.manipulationstarting(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.manipulationstarting(VS.100).aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;ManipulationStarting&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-fareast-font-family: Symbol; mso-bidi-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.manipulationcompleted(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.manipulationcompleted(VS.100).aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;ManipulationCompleted&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 0in; MARGIN: 0in 0in 0pt; mso-list: none; tab-stops: .5in; mso-add-space: auto" class=MsoListBulletCxSpMiddle&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 0in; MARGIN: 0in 0in 10pt; mso-list: none; tab-stops: .5in; mso-add-space: auto" class=MsoListBulletCxSpLast&gt;&lt;FONT size=3 face=Calibri&gt;You can restrict the manipulations that are allowed by specifying the &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationmodes%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationmodes%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;ManipulationMode&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; in the Starting event.&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-COLLAPSE: collapse; BORDER-TOP: medium none; BORDER-RIGHT: medium none; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-alt: solid #C0504D 1.0pt; mso-border-themecolor: accent2" class=MsoTableLightListAccent2 border=1 cellSpacing=0 cellPadding=0 class="MsoTableLightListAccent2"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: -1; mso-yfti-firstrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #c0504d; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-left-themecolor: accent2; mso-background-themecolor: accent2; mso-border-top-themecolor: accent2" vAlign=top&gt;&lt;FONT size=3 face=Calibri&gt;&lt;/FONT&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #c0504d; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-background-themecolor: accent2; mso-border-top-themecolor: accent2" vAlign=top&gt;
&lt;P style="TEXT-ALIGN: center; LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 1" class=MsoNormal align=center&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: white; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-themecolor: background1"&gt;Member name&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #c0504d; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-background-themecolor: accent2; mso-border-top-themecolor: accent2; mso-border-right-themecolor: accent2" vAlign=top&gt;
&lt;P style="TEXT-ALIGN: center; LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 1" class=MsoNormal align=center&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: white; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'; mso-themecolor: background1"&gt;Description&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 0"&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-top-themecolor: accent2; mso-border-bottom-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;None&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Manipulation events do not occur.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 1"&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-left-themecolor: accent2" vAlign=top&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;TranslateX&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-border-right-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;A manipulation can translate an object horizontally.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 2"&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-top-themecolor: accent2; mso-border-bottom-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;TranslateY&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;A manipulation can translate an object vertically.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 3"&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-left-themecolor: accent2" vAlign=top&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Translate&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-border-right-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;A manipulation can translate an object.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 4"&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-top-themecolor: accent2; mso-border-bottom-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Rotate&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;A manipulation can rotate an object.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 5"&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-left-themecolor: accent2" vAlign=top&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Scale&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-border-right-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;A manipulation can scale an object&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 6; mso-yfti-lastrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-top-themecolor: accent2; mso-border-bottom-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;All (default)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;A manipulation can scale, translate, or rotate an object and can occur with one point of input.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P style="TEXT-INDENT: 0in; MARGIN: 0in 0in 0pt; mso-list: none; tab-stops: .5in; mso-add-space: auto" class=MsoListBulletCxSpFirst&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 0in; MARGIN: 0in 0in 0pt; mso-list: none; tab-stops: .5in; mso-add-space: auto" class=MsoListBulletCxSpMiddle&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Next you listen to the delta in the manipulations and perform the necessary transform, rotation,…&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 0in; MARGIN: 0in 0in 10pt; mso-list: none; tab-stops: .5in; mso-add-space: auto" class=MsoListBulletCxSpLast&gt;&lt;FONT size=3 face=Calibri&gt;The &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdeltaeventargs_properties%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdeltaeventargs_properties%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;manipulationDeltaEventArgs&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt; provides the &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdelta_members%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdelta_members%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;DeltaManipulation&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; property that you can use for &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-COLLAPSE: collapse; BORDER-TOP: medium none; BORDER-RIGHT: medium none; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-alt: solid #C0504D 1.0pt; mso-border-themecolor: accent2" class=MsoTableLightListAccent2 border=1 cellSpacing=0 cellPadding=0 class="MsoTableLightListAccent2"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: -1; mso-yfti-firstrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #c0504d; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-left-themecolor: accent2; mso-background-themecolor: accent2; mso-border-top-themecolor: accent2" vAlign=top&gt;
&lt;P style="TEXT-ALIGN: center; LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 5" class=MsoNormal align=center&gt;&lt;B&gt;&lt;SPAN style="COLOR: white; mso-themecolor: background1; mso-no-proof: yes"&gt;&lt;?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /&gt;&lt;v:shapetype id=_x0000_t75 coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;&lt;v:stroke joinstyle="miter"&gt;&lt;/v:stroke&gt;&lt;v:formulas&gt;&lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 1 0"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum 0 0 @1"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @2 1 2"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelWidth"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @3 21600 pixelHeight"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @0 0 1"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @6 1 2"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelWidth"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @8 21600 0"&gt;&lt;/v:f&gt;&lt;v:f eqn="prod @7 21600 pixelHeight"&gt;&lt;/v:f&gt;&lt;v:f eqn="sum @10 21600 0"&gt;&lt;/v:f&gt;&lt;/v:formulas&gt;&lt;v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"&gt;&lt;/v:path&gt;&lt;o:lock v:ext="edit" aspectratio="t"&gt;&lt;/o:lock&gt;&lt;/v:shapetype&gt;&lt;v:shape style="WIDTH: 0.75pt; HEIGHT: 0.75pt; VISIBILITY: visible; mso-wrap-style: square" id=Picture_x0020_14 o:spid="_x0000_i1025" type="#_x0000_t75" alt="http://i.msdn.microsoft.com/Global/Images/clear.gif"&gt;&lt;v:imagedata src="file:///C:\Users\llobo\AppData\Local\Temp\msohtmlclip1\01\clip_image001.gif" o:title="clear" mce_src="file:///C:\Users\llobo\AppData\Local\Temp\msohtmlclip1\01\clip_image001.gif"&gt;&lt;/v:imagedata&gt;&lt;/v:shape&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: white; mso-themecolor: background1"&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="COLOR: white; mso-themecolor: background1"&gt;Name&lt;/SPAN&gt;&lt;B&gt;&lt;SPAN style="COLOR: white; FONT-SIZE: 12pt; mso-themecolor: background1"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #c0504d; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-background-themecolor: accent2; mso-border-top-themecolor: accent2; mso-border-right-themecolor: accent2" vAlign=top&gt;
&lt;P style="TEXT-ALIGN: center; LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 1" class=MsoNormal align=center&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="COLOR: white; mso-themecolor: background1"&gt;Description&lt;/SPAN&gt;&lt;B&gt;&lt;SPAN style="COLOR: white; FONT-SIZE: 12pt; mso-themecolor: background1"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 0" data="public;declared;"&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;&lt;!--src=[../icons/pubproperty.gif]--&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68" class=MsoNormal&gt;&lt;B&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdelta.expansion%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdelta.expansion%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;Expansion&lt;/FONT&gt;&lt;/A&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Gets or sets the amount the manipulation has resized in .&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 1" data="public;declared;"&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-left-themecolor: accent2" vAlign=top&gt;&lt;!--src=[../icons/pubproperty.gif]--&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4" class=MsoNormal&gt;&lt;B&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdelta.rotation%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdelta.rotation%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;Rotation&lt;/FONT&gt;&lt;/A&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #f0f0f0; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-border-right-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Gets or sets the rotation of the manipulation in degrees.&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 2" data="public;declared;"&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;&lt;!--src=[../icons/pubproperty.gif]--&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 68" class=MsoNormal&gt;&lt;B&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdelta.scale%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdelta.scale%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;Scale&lt;/FONT&gt;&lt;/A&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #c0504d 1pt solid; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-border-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 64" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Gets or sets the amount the manipulation has resized as a multiplier.&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 3; mso-yfti-lastrow: yes" data="public;declared;"&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #c0504d 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #f0f0f0; PADDING-TOP: 0in; mso-border-left-themecolor: accent2; mso-border-bottom-themecolor: accent2" vAlign=top&gt;&lt;!--src=[../icons/pubproperty.gif]--&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-yfti-cnfc: 4" class=MsoNormal&gt;&lt;B&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdelta.translation%28VS.100%29.aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.windows.input.manipulationdelta.translation%28VS.100%29.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;Translation&lt;/FONT&gt;&lt;/A&gt;&lt;/B&gt;&lt;B&gt;&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #c0504d 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #c0504d 1pt solid; PADDING-TOP: 0in; mso-border-right-themecolor: accent2; mso-border-bottom-themecolor: accent2" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Gets or sets the linear motion of the manipulation.&lt;SPAN style="FONT-SIZE: 12pt"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P style="TEXT-INDENT: 0in; MARGIN: 0in 0in 0pt; mso-list: none; tab-stops: .5in; mso-add-space: auto" class=MsoListBulletCxSpFirst&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 0in; MARGIN: 0in 0in 0pt; mso-list: none; tab-stops: .5in; mso-add-space: auto" class=MsoListBulletCxSpMiddle&gt;&lt;FONT size=3 face=Calibri&gt;A sample app demonstrating the usage can be found &lt;/FONT&gt;&lt;A href="http://www.wpftutorial.net/Multitouch2.html" mce_href="http://www.wpftutorial.net/Multitouch2.html"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;here&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 0in; MARGIN: 0in 0in 0pt; mso-list: none; tab-stops: .5in; mso-add-space: auto" class=MsoListBulletCxSpMiddle&gt;&lt;FONT size=3 face=Calibri&gt;Touch design guidelines can be found &lt;/FONT&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/cc872774.aspx" mce_href="http://msdn.microsoft.com/en-us/library/cc872774.aspx"&gt;&lt;FONT color=#0000ff size=3 face=Calibri&gt;here&lt;/FONT&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 0in; MARGIN: 0in 0in 10pt; mso-list: none; tab-stops: .5in; mso-add-space: auto" class=MsoListBulletCxSpLast&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/24/new-wpf-features-multitouch.aspx&amp;amp;subject=New WPF Features: MultiTouch" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/24/new-wpf-features-multitouch.aspx&amp;amp;phase=2&amp;amp;title=New WPF Features: MultiTouch" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/24/new-wpf-features-multitouch.aspx&amp;amp;title=New WPF Features: MultiTouch" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=New WPF Features: MultiTouch&amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/24/new-wpf-features-multitouch.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/24/new-wpf-features-multitouch.aspx&amp;amp;title=New WPF Features: MultiTouch" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/24/new-wpf-features-multitouch.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/24/new-wpf-features-multitouch.aspx&amp;amp;title=New WPF Features: MultiTouch" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/24/new-wpf-features-multitouch.aspx&amp;amp;title=New WPF Features: MultiTouch" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9927935" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term="MultiTouch" scheme="http://blogs.msdn.com/llobo/archive/tags/MultiTouch/default.aspx" /></entry><entry><title>TestAPI 0.4 Released</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/23/testapi-0-4-released.aspx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/23/testapi-0-4-released.aspx</id><published>2009-11-23T18:19:00Z</published><updated>2009-11-23T18:19:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;A href="http://testapi.codeplex.com/"&gt;&lt;FONT size=3 face=Calibri&gt;TestAPI&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; has come out with a new release V0.4. Please do check it out.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;So what’s new:&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;UL type=disc&gt;
&lt;LI style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt; tab-stops: list .5in; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Deep Object Comparison utility&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;
&lt;LI style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt; tab-stops: list .5in; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Text String Generation for random interesting combination of strings&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;
&lt;LI style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt; tab-stops: list .5in; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;A Leak Detection API that enables the user to determine if the application is leaking&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;
&lt;LI style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt; tab-stops: list .5in; mso-list: l0 level1 lfo1; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Enhanced Combinatorial Variation Generation – supports tagged and weighted values &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9927432" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="TestAPI" scheme="http://blogs.msdn.com/llobo/archive/tags/TestAPI/default.aspx" /></entry><entry><title>New WPF Features: DatePicker\Calendar\VSM\Datagrid</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx</id><published>2009-11-23T16:18:00Z</published><updated>2009-11-23T16:18:00Z</updated><content type="html">&lt;P mce_keep="true"&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;This is part of a &lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;FONT color=#dd4a21&gt;series&lt;/FONT&gt;&lt;/A&gt; on New WPF Features&lt;/SPAN&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;These controls have been part of the WPF toolkit on Codeplex. They are now making their way into the framework.&lt;/P&gt;
&lt;P mce_keep="true"&gt;You can get the usage details from the codeplex site &lt;/P&gt;
&lt;LI&gt;&lt;A href="http://windowsclient.net/wpf/wpf35/wpf-35sp1-toolkit-datagrid-feature-walkthrough.aspx"&gt;WPF Toolkit: DataGrid Feature Walkthrough&lt;/A&gt;&amp;nbsp; 
&lt;LI&gt;&lt;A href="http://windowsclient.net/wpf/wpf35/wpf-35sp1-toolkit-visual-state-manager-overview.aspx"&gt;WPF Toolkit: Visual State Manager Overview&lt;/A&gt;&amp;nbsp; 
&lt;LI&gt;&lt;A href="http://windowsclient.net/wpf/wpf35/wpf-35sp1-toolkit-calendar-datepicker-walkthrough.aspx"&gt;WPF Toolkit: DatePicker and Calendar Walkthrough&lt;/A&gt;&amp;nbsp;&lt;/LI&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp; &lt;SPAN class=kwrd&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;&lt;FONT color=#800000&gt;Calendar&lt;/FONT&gt;&lt;/SPAN&gt; &lt;SPAN class=attr&gt;&lt;FONT color=#ff0000&gt;FirstDayOfWeek&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&lt;FONT color=#0000ff&gt;="Monday"&lt;/FONT&gt;&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;&lt;FONT color=#0000ff&gt;/&amp;gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&lt;SPAN class=kwrd&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;&lt;FONT color=#800000&gt;DatePicker&lt;/FONT&gt;&lt;/SPAN&gt; &lt;SPAN class=attr&gt;&lt;FONT color=#ff0000&gt;FirstDayOfWeek&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;&lt;FONT color=#0000ff&gt;="Monday"&lt;/FONT&gt;&lt;/SPAN&gt; &lt;SPAN class=kwrd&gt;&lt;FONT color=#0000ff&gt;/&amp;gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;BR&gt;&amp;nbsp;&lt;IMG src="http://blogs.msdn.com/photos/llester/images/9021330/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9021330/original.aspx"&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;SPAN class=kwrd&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN class=html&gt;&lt;FONT color=#800000&gt;DataGrid&lt;/FONT&gt;&lt;/SPAN&gt; &lt;SPAN class=attr&gt;&lt;FONT color=#ff0000&gt;ItemsSource&lt;/FONT&gt;&lt;/SPAN&gt;&lt;FONT color=#0000ff&gt;&lt;SPAN class=kwrd&gt;="{StaticResource myData}"&lt;/SPAN&gt;&lt;SPAN class=kwrd&gt;/&amp;gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;BR&gt;&lt;IMG src="http://blogs.msdn.com/photos/llester/images/9021328/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9021328/original.aspx"&gt;&lt;/P&gt;
&lt;P&gt;Have fun&amp;nbsp;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx&amp;amp;subject=New WPF Features: DatePicker\Calendar\VSM\Datagrid" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx&amp;amp;phase=2&amp;amp;title=New WPF Features: DatePicker\Calendar\VSM\Datagrid" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx&amp;amp;title=New WPF Features: DatePicker\Calendar\VSM\Datagrid" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=New WPF Features: DatePicker\Calendar\VSM\Datagrid &amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx&amp;amp;title=New WPF Features: DatePicker\Calendar\VSM\Datagrid" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx&amp;amp;title=New WPF Features: DatePicker\Calendar\VSM\Datagrid" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/23/new-wpf-features-datepicker-calendar-vsm-datagrid.aspx&amp;amp;title=New WPF Features: DatePicker\Calendar\VSM\Datagrid" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9926560" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="Datagrid" scheme="http://blogs.msdn.com/llobo/archive/tags/Datagrid/default.aspx" /><category term="Calendar" scheme="http://blogs.msdn.com/llobo/archive/tags/Calendar/default.aspx" /><category term="DatePicker" scheme="http://blogs.msdn.com/llobo/archive/tags/DatePicker/default.aspx" /><category term="vsm" scheme="http://blogs.msdn.com/llobo/archive/tags/vsm/default.aspx" /><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /></entry><entry><title>XAML 2009 Features: FactoryMethod\Arguments</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/20/xaml-2009-features-factorymethod-arguments.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="44871" href="http://blogs.msdn.com/llobo/attachment/9925568.ashx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/20/xaml-2009-features-factorymethod-arguments.aspx</id><published>2009-11-20T15:54:00Z</published><updated>2009-11-20T15:54:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-ansi-language: EN; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri" lang=EN&gt;This is part of a &lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: EN" lang=EN&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;series&lt;/SPAN&gt;&lt;/A&gt;&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: EN; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri" lang=EN&gt; on New WPF\XAML Features&lt;/SPAN&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Another new feature in XAML 2009 is the possibility of creating objects using the non-default constructors. The keyword here is &lt;SPAN style="COLOR: #c00000"&gt;x:Arguments&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;So creating a person object with a constructor requiring Name\Age could be written in XAML as&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;local&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Person&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;Arguments&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;String&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Tom&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;String&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Int32&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;21&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Int32&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Arguments&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;local&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Person&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Next interesting feature is using FactoryMethods… the keyword here is &lt;SPAN style="COLOR: #c00000"&gt;x:FactoryMethod&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;p:Guid &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;x:FactoryMethod&lt;/SPAN&gt;='NewGuid'/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;You could also combine x:Arguments with FactoryMethod&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;coll&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;List&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='list'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;TypeArguments&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='x:String'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;x&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;FactoryMethod&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;='local:Factory.CreateStringList'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;Arguments&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;String&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Mickey,Donald&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;String&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Arguments&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;coll&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;List&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;IMG src="http://blogs.msdn.com/photos/llester/images/9925563/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9925563/original.aspx"&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Sample app showing usage is &lt;A href="http://blogs.msdn.com/llobo/attachment/9925568.ashx" mce_href="http://blogs.msdn.com/llobo/attachment/9925568.ashx"&gt;attached&lt;o:p&gt;&lt;/o:p&gt;&lt;/A&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;EM&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; COLOR: black; FONT-SIZE: 10pt; mso-ansi-language: EN; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi" lang=EN&gt;Note that XAML 2009 features work only for loose XAML in WPF.&lt;/SPAN&gt;&lt;/EM&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/20/xaml-2009-features-factorymethod-arguments.aspx&amp;amp;subject=XAML 2009 Features: FactoryMethod\Arguments" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/20/xaml-2009-features-factorymethod-arguments.aspx&amp;amp;phase=2&amp;amp;title=XAML 2009 Features: FactoryMethod\Arguments" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/20/xaml-2009-features-factorymethod-arguments.aspx&amp;amp;title=XAML 2009 Features: FactoryMethod\Arguments" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=XAML 2009 Features: FactoryMethod\Arguments &amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/20/xaml-2009-features-factorymethod-arguments.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/20/xaml-2009-features-factorymethod-arguments.aspx&amp;amp;title=XAML 2009 Features: FactoryMethod\Arguments" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/20/xaml-2009-features-factorymethod-arguments.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/20/xaml-2009-features-factorymethod-arguments.aspx&amp;amp;title=XAML 2009 Features: FactoryMethod\Arguments" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/20/xaml-2009-features-factorymethod-arguments.aspx&amp;amp;title=XAML 2009 Features: FactoryMethod\Arguments" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9925568" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term=".NET 4" scheme="http://blogs.msdn.com/llobo/archive/tags/.NET+4/default.aspx" /><category term="XAML 2009 features" scheme="http://blogs.msdn.com/llobo/archive/tags/XAML+2009+features/default.aspx" /><category term="x:Arguments" scheme="http://blogs.msdn.com/llobo/archive/tags/x_3A00_Arguments/default.aspx" /><category term="FactoryMethod" scheme="http://blogs.msdn.com/llobo/archive/tags/FactoryMethod/default.aspx" /></entry><entry><title>XAML 2009 Features: Generics Support</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/19/xaml-2009-features-generics-support.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="44483" href="http://blogs.msdn.com/llobo/attachment/9925424.ashx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/19/xaml-2009-features-generics-support.aspx</id><published>2009-11-19T13:34:00Z</published><updated>2009-11-19T13:34:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="mso-ansi-language: EN" lang=EN&gt;&lt;FONT size=3 face=Calibri&gt;This is part of a &lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;FONT size=3 face=Calibri&gt;series&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3 face=Calibri&gt; on New WPF\XAML Features&lt;/FONT&gt;&lt;/SPAN&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;XAML 2009 supports generics &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-char-type: symbol; mso-symbol-font-family: Wingdings; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;J&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; .. In previous releases, if you needed to have an observableCollection for databinding you would probably have written code like&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;class&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: #2b91af"&gt;PersonCollection&lt;/SPAN&gt;:ObservableCollection&lt;SPAN style="COLOR: blue"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;Person&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;{}&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;l&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;PersonCollection&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Person&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Name&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="Tom" /&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;l&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;PersonCollection&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;In this release, you can now write this as &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;ObservableCollection&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;x&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;TypeArguments&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;='local:Person'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; xmlns&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='clr-namespace:System.Collections.ObjectModel;assembly=System'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: blue"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&amp;gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;local&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Person&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Name&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='Tom'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Age&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='21' /&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;ObservableCollection&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;ListBox&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; ItemsSource&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='{&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Binding&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; DisplayMemberPath&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='Name'&amp;gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;ListBox&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Notice the use of &lt;A href="http://msdn.microsoft.com/en-us/library/ms750476.aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms750476.aspx"&gt;TypeArguments&lt;/A&gt; to specify the collection type (Person in this case). It is used to pass the required constraints for a generic type&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Lets go for some more examples. Simple Dictionary with the key\value pair being strings&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;StackPanel.DataContext&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;coll&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;Dictionary&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;x&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: yellow; COLOR: blue; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: yellow; COLOR: red; mso-highlight: yellow"&gt;TypeArguments&lt;/SPAN&gt;&lt;SPAN style="BACKGROUND: yellow; COLOR: blue; mso-highlight: yellow"&gt;='x:String, x:String'&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;coll&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;='clr-namespace:System.Collections.Generic;assembly=mscorlib'&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;String&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='One'&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;1&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;String&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;String&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='Two'&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;2&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;String&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;coll&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Dictionary&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;StackPanel.DataContext&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;ListBox&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; ItemsSource&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='{&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Binding&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;DisplayMemberPath&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;='Key'&lt;/SPAN&gt; &lt;SPAN style="COLOR: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;Width&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;='100'&amp;gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;ListBox&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Next we have a slightly more complicated dictionary with an object as the key\value pair. Interesting to note here is that Key&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;StackPanel.DataContext&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;coll&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Dictionary&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;x&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;TypeArguments&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;='p:Object, p:Object'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: red"&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;p&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;='clr-namespace:System;assembly=mscorlib'&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;Point&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; X&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='42'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Y&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='3' &amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;Point&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt; X&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;='100'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt; Y&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;='1'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; /&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Point&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Null&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='three' /&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;coll&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Dictionary&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;StackPanel.DataContext&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;ListBox&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; ItemsSource&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='{&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Binding&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;DisplayMemberPath&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;='Value'&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Width&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;='100'&amp;gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;ListBox&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;And finally a nested dictionary sample &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;StackPanel.Resources&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;coll&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;Dictionary&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;x&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;TypeArguments&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;='p:Object, coll:Dictionary(p:Object, p:Object)'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='NestedItems'&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;coll&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;Dictionary&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='Dictionary1'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;TypeArguments&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='x:Object, x:Object'&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;String&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='One'&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;1&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;String&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Point&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; X&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='42'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Y&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='3'&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Point&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; X&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='11'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Y&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='22' /&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Point&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;coll&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Dictionary&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;coll&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Dictionary&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;StackPanel.Resources&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;ListBox&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; ItemsSource&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='{&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;StaticResource&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; NestedItems&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}'&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; DisplayMemberPath&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='Key'&amp;gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;ListBox&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Sample app showing the usage is &lt;A href="http://blogs.msdn.com/llobo/attachment/9925424.ashx" mce_href="http://blogs.msdn.com/llobo/attachment/9925424.ashx"&gt;attached&lt;/A&gt;.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;&lt;IMG src="http://blogs.msdn.com/photos/llester/images/9925420/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9925420/original.aspx"&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;EM&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; COLOR: black; FONT-SIZE: 10pt; mso-ansi-language: EN; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi" lang=EN&gt;&amp;nbsp;Note that XAML 2009 features work only for loose XAML in WPF.&lt;/SPAN&gt;&lt;/EM&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/19/xaml-2009-features-generics-support.aspx&amp;amp;subject=XAML 2009 Features: Generics Support" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/19/xaml-2009-features-generics-support.aspx&amp;amp;phase=2&amp;amp;title=XAML 2009 Features: Generics Support" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/19/xaml-2009-features-generics-support.aspx&amp;amp;title=XAML 2009 Features: Generics Support" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=XAML 2009 Features: Generics Support&amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/19/xaml-2009-features-generics-support.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/19/xaml-2009-features-generics-support.aspx&amp;amp;title=XAML 2009 Features: Generics Support" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/19/xaml-2009-features-generics-support.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/19/xaml-2009-features-generics-support.aspx&amp;amp;title=XAML 2009 Features: Generics Support" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/19/xaml-2009-features-generics-support.aspx&amp;amp;title=XAML 2009 Features: Generics Support" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9925424" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term=".NET 4" scheme="http://blogs.msdn.com/llobo/archive/tags/.NET+4/default.aspx" /><category term="XAML 2009 features" scheme="http://blogs.msdn.com/llobo/archive/tags/XAML+2009+features/default.aspx" /><category term="Generics" scheme="http://blogs.msdn.com/llobo/archive/tags/Generics/default.aspx" /></entry><entry><title>New WPF Features: SynchronizedInputPattern</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/18/new-wpf-features-synchronizedinputpattern.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="86220" href="http://blogs.msdn.com/llobo/attachment/9922340.ashx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/18/new-wpf-features-synchronizedinputpattern.aspx</id><published>2009-11-18T15:05:00Z</published><updated>2009-11-18T15:05:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;This is part of a &lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;FONT color=#dd4a21&gt;series&lt;/FONT&gt;&lt;/A&gt; on New WPF Features&lt;/SPAN&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;In previous releases, sending input through automation was tricky mainly because the app and the automation processes were separate. The app state could change between the time the input was sent and received. As an example, suppose you need to click something but before the click happens, the elements move (maybe due to resize …). In this case, some other element could get the mouse input. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;To overcome this problem, we have introduced the &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: #2178e0; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;SynchronizedInputPattern&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;. Now the framework sees where the input is going and if its not the intended target, the input is cancelled. The sender is notified whether the input operation was successful or not and based on it can make a decision to try again.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;So coming to the API, to determine if an element supports the pattern we get the property value&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;buttonElement.GetCurrentPropertyValue(AutomationElement.IsSynchronizedInputPatternAvailableProperty);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Next, you need to hook the events to the element so that we are notified of the operations success&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;TABLE style="BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-COLLAPSE: collapse; BORDER-TOP: medium none; BORDER-RIGHT: medium none; mso-yfti-tbllook: 1184; mso-padding-alt: 0in 5.4pt 0in 5.4pt; mso-border-alt: solid #9BBB59 1.0pt; mso-border-themecolor: accent3; mso-border-insideh: 1.0pt solid #9BBB59; mso-border-insideh-themecolor: accent3; mso-border-insidev: 1.0pt solid #9BBB59; mso-border-insidev-themecolor: accent3" class=MsoTableMediumList1Accent3 border=1 cellSpacing=0 cellPadding=0 class="MsoTableMediumList1Accent3"&gt;
&lt;TBODY&gt;
&lt;TR style="mso-yfti-irow: -1; mso-yfti-firstrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: #9bbb59 1pt solid; BORDER-LEFT: #9bbb59 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #9bbb59 1pt solid; BORDER-RIGHT: #9bbb59 1pt solid; PADDING-TOP: 0in; mso-border-themecolor: accent3" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 3.75pt 0in; mso-yfti-cnfc: 5" class=MsoNormal&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.automation.synchronizedinputpatternidentifiers.inputreachedtargetevent(VS.100).aspx"&gt;&lt;SPAN style="COLOR: #2178e0; TEXT-DECORATION: none; text-underline: none"&gt;InputReachedTargetEvent&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #9bbb59 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #9bbb59 1pt solid; BORDER-RIGHT: #9bbb59 1pt solid; PADDING-TOP: 0in; mso-border-themecolor: accent3; mso-border-left-alt: solid #9BBB59 1.0pt; mso-border-left-themecolor: accent3" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 3.75pt 0in; mso-yfti-cnfc: 1" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Identifies the event raised when the input was received by the element currently listening for the input.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 0"&gt;
&lt;TD style="BORDER-BOTTOM: #9bbb59 1pt solid; BORDER-LEFT: #9bbb59 1pt solid; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #e6eed6; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #9bbb59 1pt solid; PADDING-TOP: 0in; mso-border-top-alt: solid #9BBB59 1.0pt; mso-background-themecolor: accent3; mso-border-themecolor: accent3; mso-border-top-themecolor: accent3; mso-background-themetint: 63" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 3.75pt 0in; mso-yfti-cnfc: 68" class=MsoNormal&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.automation.synchronizedinputpatternidentifiers.inputreachedotherelementevent(VS.100).aspx"&gt;&lt;SPAN style="COLOR: #2178e0; TEXT-DECORATION: none; text-underline: none"&gt;InputReachedOtherElementEvent&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #9bbb59 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BACKGROUND: #e6eed6; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #9bbb59 1pt solid; PADDING-TOP: 0in; mso-border-top-alt: solid #9BBB59 1.0pt; mso-background-themecolor: accent3; mso-border-left-alt: solid #9BBB59 1.0pt; mso-border-left-themecolor: accent3; mso-border-top-themecolor: accent3; mso-background-themetint: 63; mso-border-bottom-themecolor: accent3; mso-border-right-themecolor: accent3" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 3.75pt 0in; mso-yfti-cnfc: 64" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Identifies the event raised when the input was received by an element other than the one currently listening for the input.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;
&lt;TR style="mso-yfti-irow: 1; mso-yfti-lastrow: yes"&gt;
&lt;TD style="BORDER-BOTTOM: #9bbb59 1pt solid; BORDER-LEFT: #9bbb59 1pt solid; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #9bbb59 1pt solid; PADDING-TOP: 0in; mso-border-top-alt: solid #9BBB59 1.0pt; mso-border-themecolor: accent3; mso-border-top-themecolor: accent3" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 3.75pt 0in; mso-yfti-cnfc: 4" class=MsoNormal&gt;&lt;B&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;A href="http://msdn.microsoft.com/en-us/library/system.windows.automation.synchronizedinputpatternidentifiers.inputdiscardedevent(VS.100).aspx"&gt;&lt;SPAN style="COLOR: #2178e0; TEXT-DECORATION: none; text-underline: none"&gt;InputDiscardedEvent&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/B&gt;&lt;/P&gt;&lt;/TD&gt;
&lt;TD style="BORDER-BOTTOM: #9bbb59 1pt solid; BORDER-LEFT: #f0f0f0; PADDING-BOTTOM: 0in; BACKGROUND-COLOR: transparent; PADDING-LEFT: 5.4pt; PADDING-RIGHT: 5.4pt; BORDER-TOP: #f0f0f0; BORDER-RIGHT: #9bbb59 1pt solid; PADDING-TOP: 0in; mso-border-top-alt: solid #9BBB59 1.0pt; mso-border-left-alt: solid #9BBB59 1.0pt; mso-border-left-themecolor: accent3; mso-border-top-themecolor: accent3; mso-border-bottom-themecolor: accent3; mso-border-right-themecolor: accent3" vAlign=top&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 3.75pt 0in" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Identifies the event raised when the input was discarded by WPF. &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Once the events are hooked, you can start listening to the specific &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: #2178e0; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;SynchronizedInputType&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #2b91af; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: white; WORD-BREAK: break-all; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: black; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SynchronizedInputType.KeyUp,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: white; WORD-BREAK: break-all; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: black; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SynchronizedInputType.KeyDown,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: white; WORD-BREAK: break-all; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: black; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SynchronizedInputType.LeftMouseUp,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: white; WORD-BREAK: break-all; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: black; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SynchronizedInputType.LeftMouseDown,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; BACKGROUND: white; WORD-BREAK: break-all; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: black; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SynchronizedInputType.RightMouseUp,&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 5pt; BACKGROUND: white; WORD-BREAK: break-all; tab-stops: 45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Courier New'; COLOR: black; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SynchronizedInputType.RightMouseDown&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;syncInputPattern.&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: #2178e0; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;StartListening&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;(&lt;SPAN style="COLOR: #2b91af"&gt;SynchronizedInputType&lt;/SPAN&gt;.MouseLeftButtonDown);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;One thing to note is that the event fires only once. So if you need to send the input again, you will need to call the StartListening API again.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;You can cancel listening by calling the &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: #2178e0; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Cancel()&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt; API&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;Sample app which shows the usage is &lt;A href="http://blogs.msdn.com/llobo/attachment/9922340.ashx" mce_href="http://blogs.msdn.com/llobo/attachment/9922340.ashx"&gt;attached&lt;/A&gt;. The app clicks on different controls simulating incorrect input received. The console output describes the operations being performed.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;******Goal is to Click the Button******&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;-- Click on the List&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;---- Input was Discarded - Try Again clicking On TextBox nested in Button&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;-- Click on the Textbox inside Button&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; TEXT-INDENT: 0.5in; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;---- Input Reached Element other than Target - Try Again clicking on Button&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;-- Click on the Button&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; TEXT-INDENT: 0.5in; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;---- SUCCESS: Input Reached Target&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&lt;IMG src="http://blogs.msdn.com/photos/llester/images/9922339/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9922339/original.aspx"&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Times New Roman','serif'; COLOR: black; FONT-SIZE: 12pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/18/new-wpf-features-synchronizedinputpattern.aspx&amp;amp;subject=New WPF Features: SynchronizedInputPattern" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/18/new-wpf-features-synchronizedinputpattern.aspx&amp;amp;phase=2&amp;amp;title=New WPF Features: SynchronizedInputPattern" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/18/new-wpf-features-synchronizedinputpattern.aspx&amp;amp;title=New WPF Features: SynchronizedInputPattern" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=New WPF Features: SynchronizedInputPattern &amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/18/new-wpf-features-synchronizedinputpattern.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/18/new-wpf-features-synchronizedinputpattern.aspx&amp;amp;title=New WPF Features: SynchronizedInputPattern" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/18/new-wpf-features-synchronizedinputpattern.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/18/new-wpf-features-synchronizedinputpattern.aspx&amp;amp;title=New WPF Features: SynchronizedInputPattern" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/18/new-wpf-features-synchronizedinputpattern.aspx&amp;amp;title=New WPF Features: SynchronizedInputPattern" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9922340" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term=".NET 4" scheme="http://blogs.msdn.com/llobo/archive/tags/.NET+4/default.aspx" /><category term="SynchronizedInputPattern" scheme="http://blogs.msdn.com/llobo/archive/tags/SynchronizedInputPattern/default.aspx" /></entry><entry><title>New WPF Features: PixelShader3 Support</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/17/new-wpf-features-pixelshader3-support.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="788011" href="http://blogs.msdn.com/llobo/attachment/9921437.ashx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/17/new-wpf-features-pixelshader3-support.aspx</id><published>2009-11-17T15:28:00Z</published><updated>2009-11-17T15:28:00Z</updated><content type="html">&lt;P&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-ansi-language: EN" lang=EN&gt;This is part of a &lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;SPAN style="COLOR: #dd4a21"&gt;series&lt;/SPAN&gt;&lt;/A&gt; on New WPF Features&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; mso-ansi-language: EN" lang=EN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="mso-ansi-language: EN" lang=EN&gt;&lt;FONT face="Times New Roman"&gt;&amp;nbsp;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt"&gt;Previously WPF only supported Pixel Shader 2.0 (PS 2.0). For this release, we added PS 3.0 support providing the benefits of more instructions, registers ....&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt"&gt;The usage is similar as before. However, we have provided an API to determine if the shader can be run on the machine. The API’s are self-explanatory&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;SPAN style="COLOR: #953735; mso-themecolor: accent2; mso-themeshade: 191"&gt;RenderCapability&lt;/SPAN&gt;.&lt;SPAN style="COLOR: blue"&gt;IsPixelShaderVersionSupported&lt;/SPAN&gt;(majorversion,minorVersion) &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;SPAN style="COLOR: #953735; mso-themecolor: accent2; mso-themeshade: 191"&gt;RenderCapability&lt;/SPAN&gt;. &lt;SPAN style="COLOR: blue"&gt;&lt;A href="http://www.aisto.com/roeder/dotnet/Default.aspx?Target=code://PresentationCore:3.0.0.0:31bf3856ad364e35/System.Windows.Media.RenderCapability/IsPixelShaderVersionSupported(Int16,Int16):Boolean"&gt;&lt;SPAN style="TEXT-DECORATION: none; text-underline: none"&gt;&lt;FONT color=#0000ff&gt;IsPixelShaderVersionSupported&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;InSoftware&lt;/SPAN&gt; (majorversion,minorVersion)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: l0 level1 lfo1" class=MsoListBulletCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Symbol; mso-bidi-font-family: Symbol; mso-fareast-font-family: Symbol"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3&gt;·&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="COLOR: #953735; mso-themecolor: accent2; mso-themeshade: 191"&gt;RenderCapability&lt;/SPAN&gt;. &lt;SPAN style="COLOR: blue"&gt;MaxPixelShaderInstructionSlots&lt;/SPAN&gt;(majorversion,minorVersion)&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: none; tab-stops: .5in" class=MsoListBulletCxSpMiddle&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: none; tab-stops: .5in" class=MsoListBulletCxSpMiddle&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;IMG src="http://blogs.msdn.com/photos/llester/images/9921434/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9921434/original.aspx"&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: none; tab-stops: .5in" class=MsoListBulletCxSpMiddle&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;(snapshot of app on a PS2.0 supported machine)&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: none; tab-stops: .5in" class=MsoListBulletCxSpMiddle&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 0pt 0.25in; mso-list: none; tab-stops: .5in" class=MsoListBulletCxSpMiddle&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Sample project &lt;A href="http://blogs.msdn.com/llobo/attachment/9921437.ashx" mce_href="http://blogs.msdn.com/llobo/attachment/9921437.ashx"&gt;attached&lt;/A&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-pixelshader3-support.aspx&amp;amp;subject=New WPF Features: PixelShader3 Support" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-pixelshader3-support.aspx&amp;amp;phase=2&amp;amp;title=New WPF Features: PixelShader3 Support" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-pixelshader3-support.aspx&amp;amp;title=New WPF Features: PixelShader3 Support" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=New WPF Features: PixelShader3 Support &amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-pixelshader3-support.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-pixelshader3-support.aspx&amp;amp;title=New WPF Features: PixelShader3 Support" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-pixelshader3-support.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-pixelshader3-support.aspx&amp;amp;title=New WPF Features: PixelShader3 Support" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-pixelshader3-support.aspx&amp;amp;title=New WPF Features: PixelShader3 Support" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9921437" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term=".NET 4" scheme="http://blogs.msdn.com/llobo/archive/tags/.NET+4/default.aspx" /><category term="PS 3.0" scheme="http://blogs.msdn.com/llobo/archive/tags/PS+3.0/default.aspx" /></entry><entry><title>New WPF Features: UIA Virtualization</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="87101" href="http://blogs.msdn.com/llobo/attachment/9920872.ashx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx</id><published>2009-11-16T16:06:00Z</published><updated>2009-11-16T16:06:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Pre .NET 4, from a UI automation perspective, virtualization was not a good story. There wasn’t a standard way of dealing with virtualized controls, since some would expose only the visual elements while the others would create an automation tree that had every element. To fix this problem, in .NET 4, we have introduced 2 new UIA patterns: ItemContainerPattern\VirtualizedItemPattern&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;ItemContainerPattern enables searching the whole tree irrespective of it being virtualized. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: 0.5in; MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;testObject.GetCurrentPattern(&lt;SPAN style="COLOR: #2b91af"&gt;ItemContainerPattern&lt;/SPAN&gt;.Pattern)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-tab-count: 1"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;Search is done using the FindItemByProperty function which has 3 parameters&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.75in; mso-add-space: auto; mso-list: l0 level1 lfo1" class=MsoListParagraphCxSpFirst&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3 face=Calibri&gt;-&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&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&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;AutomationElement startAfter: element to start search from. Setting to null would mean start from beginning&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 0pt 0.75in; mso-add-space: auto; mso-list: l0 level1 lfo1" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3 face=Calibri&gt;-&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&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&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;AutomationProperty: Property to be used for search. Setting to null corresponds to match all properties&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="TEXT-INDENT: -0.25in; MARGIN: 0in 0in 10pt 0.75in; mso-add-space: auto; mso-list: l0 level1 lfo1" class=MsoListParagraphCxSpLast&gt;&lt;SPAN style="mso-bidi-font-family: Calibri; mso-fareast-font-family: Calibri; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;&lt;SPAN style="mso-list: Ignore"&gt;&lt;FONT size=3 face=Calibri&gt;-&lt;/FONT&gt;&lt;SPAN style="FONT: 7pt 'Times New Roman'"&gt;&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&gt;&lt;SPAN dir=ltr&gt;&lt;/SPAN&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Object value: Property value&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Once you find the element, you can then determine if it’s virtualized by querying the IsVirtualizedItemPatternAvailable.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;(&lt;SPAN style="COLOR: blue"&gt;bool&lt;/SPAN&gt;)item.GetCurrentPropertyValue(&lt;SPAN style="COLOR: #2b91af"&gt;AutomationElementIdentifiers&lt;/SPAN&gt;.IsVirtualizedItemPatternAvailableProperty);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;So you have the virtualized item and would like to de-virtualize it. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #2b91af; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;VirtualizedItemPattern&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; vpattern = item.GetCurrentPattern(&lt;SPAN style="COLOR: #2b91af"&gt;VirtualizedItemPattern&lt;/SPAN&gt;.Pattern) &lt;SPAN style="COLOR: blue"&gt;as&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;VirtualizedItemPattern&lt;/SPAN&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;vpattern.Realize(); &lt;SPAN style="COLOR: green"&gt;// de-virtualize the object&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;You can also query if the ItemContainerPattern is available using the property IsItemContainerPatternAvailable.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Sample &lt;A href="http://blogs.msdn.com/llobo/attachment/9920872.ashx" mce_href="http://blogs.msdn.com/llobo/attachment/9920872.ashx"&gt;project&lt;/A&gt; showing usage is attached.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx&amp;amp;subject=New WPF Features: UIA Virtualization" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx&amp;amp;phase=2&amp;amp;title=New WPF Features: UIA Virtualization" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx&amp;amp;title=New WPF Features: UIA Virtualization" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=New WPF Features: UIA Virtualization &amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx&amp;amp;title=New WPF Features: UIA Virtualization" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx" target=_blank mce_href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx"&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx&amp;amp;title=New WPF Features: UIA Virtualization" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/16/new-wpf-features-uia-virtualization.aspx&amp;amp;title=New WPF Features: UIA Virtualization" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9920872" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term=".NET 4" scheme="http://blogs.msdn.com/llobo/archive/tags/.NET+4/default.aspx" /><category term="UIA" scheme="http://blogs.msdn.com/llobo/archive/tags/UIA/default.aspx" /></entry><entry><title>XAML 2009 Features: Named Object References</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/13/xaml-2009-features-name-references.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="40743" href="http://blogs.msdn.com/llobo/attachment/9920811.ashx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/13/xaml-2009-features-name-references.aspx</id><published>2009-11-13T15:07:00Z</published><updated>2009-11-13T15:07:00Z</updated><content type="html">&lt;FONT face=Calibri&gt;
&lt;P style="MARGIN: 0in 0in 10pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3&gt;This is part of a &lt;/FONT&gt;&lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;FONT size=3&gt;series&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt; on New WPF\XAML Features&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;In previous releases, if you needed to reference a named object, your XAML would look something like&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Label&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Target&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;='&lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;Binding&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt; ElementName&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;=firstNameBox&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}' &amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;_Target&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Label&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;TextBox&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Name&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;=&lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;'firstNameBox'&lt;/SPAN&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Uses Binding&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;TextBox&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;In the current release (.NET 4), we introduced a built in markup extension &lt;B&gt;&lt;SPAN style="COLOR: #953735; mso-themecolor: accent2; mso-themeshade: 191"&gt;x:Reference&lt;/SPAN&gt;&lt;/B&gt;. This would enable referencing a named object. The above XAML can now be written as &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Label&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Target&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;= '&lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;{&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;Reference&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt; secondNameBox&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}'&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;_Second Target&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Label&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Or &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Label&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Target&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;= &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;'thirdNameBox'&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;_Third Target&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Label&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The references look both forward as well as backwards &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Another possibility working with named objects is to create a markupextension that calls into IXamlNameResolver to resolve a name. One scenario is having method calls in XAML like the below. We covered this is a &lt;A href="http://blogs.msdn.com/llobo/archive/2009/06/09/system-xaml-method-calls-from-xaml.aspx" mce_href="http://blogs.msdn.com/llobo/archive/2009/06/09/system-xaml-method-calls-from-xaml.aspx"&gt;previous post&lt;/A&gt; written by Shree.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;School&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Topper&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="{&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Call&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; students&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;.GetTopper}" &amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;School.Class&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Students&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Name&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="students"&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Student&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Name&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="Audrey"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Marks&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="90" /&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Student&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Name&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="Bill"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Marks&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="95" /&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Students&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;School.Class&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: green; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;!-- This is backward reference --&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: green; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;!--&amp;lt;School.Topper&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: green; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;&amp;lt;Call Expression="students.GetTopper" /&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: green; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&amp;lt;/School.Topper&amp;gt;--&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;School&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT color=#000000&gt;&lt;FONT face=Calibri&gt;A simple project showing the usage of x:Reference is &lt;A href="http://blogs.msdn.com/llobo/attachment/9920811.ashx" mce_href="http://blogs.msdn.com/llobo/attachment/9920811.ashx"&gt;attached&lt;o:p&gt;&lt;/o:p&gt;&lt;/A&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/SPAN&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;IMG src="http://blogs.msdn.com/photos/llester/images/9920521/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9920521/original.aspx"&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&amp;nbsp;&lt;/P&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;EM&gt;&lt;SPAN style="FONT-FAMILY: 'Calibri','sans-serif'; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN" lang=EN&gt;&lt;FONT color=#000000 size=3&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;EM&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-FAMILY: 'Calibri','sans-serif'; FONT-SIZE: 10pt; mso-bidi-font-family: Arial; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN" lang=EN&gt;&amp;nbsp;Note that XAML 2009 features work only for loose XAML in WPF.&lt;/SPAN&gt;&lt;/EM&gt;&lt;SPAN style="LINE-HEIGHT: 115%; FONT-SIZE: 10pt; mso-ansi-language: EN" lang=EN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/EM&gt;&lt;SPAN style="mso-ansi-language: EN" lang=EN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/o:p&gt;&lt;/SPAN&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/13/xaml-2009-features-name-references.aspx&amp;amp;subject=XAML 2009 Features: Named Object References" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/13/xaml-2009-features-name-references.aspx&amp;amp;phase=2&amp;amp;title=XAML 2009 Features: Named Object References" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/13/xaml-2009-features-name-references.aspx&amp;amp;title=XAML 2009 Features: Named Object References" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=XAML 2009 Features: Named Object References &amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/13/xaml-2009-features-name-references.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/13/xaml-2009-features-name-references.aspx&amp;amp;title=XAML 2009 Features: Named Object References" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/13/xaml-2009-features-name-references.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/13/xaml-2009-features-name-references.aspx&amp;amp;title=XAML 2009 Features: Named Object References" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/13/xaml-2009-features-name-references.aspx&amp;amp;title=XAML 2009 Features: Named Object References" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9920811" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term="XAML 2009 features" scheme="http://blogs.msdn.com/llobo/archive/tags/XAML+2009+features/default.aspx" /><category term="Name Reference" scheme="http://blogs.msdn.com/llobo/archive/tags/Name+Reference/default.aspx" /></entry><entry><title>New WPF Features: Updated File Dialogs</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/12/new-wpf-features-updated-file-dialogs.aspx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/12/new-wpf-features-updated-file-dialogs.aspx</id><published>2009-11-12T15:08:00Z</published><updated>2009-11-12T15:08:00Z</updated><content type="html">&lt;P&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;This is part of a &lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;FONT color=#dd4a21&gt;series&lt;/FONT&gt;&lt;/A&gt; on New WPF Features&lt;/SPAN&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In previous releases, WPF open\Save dilogs had the XP style even on Vista. Some workarounds were to use the Vista bridge library or use the winforms dialogs. For this release we fixed this issue. You now get the OS style dialogs :) ... Usage wise its the same, you get the updated behavior for free ... The pic below shows the difference. &lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://blogs.msdn.com/photos/llester/images/9919591/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9919591/original.aspx"&gt;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/12/new-wpf-features-updated-file-dialogs.aspx&amp;amp;subject=New WPF Features: Updated File Dialogs" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/12/new-wpf-features-updated-file-dialogs.aspx&amp;amp;phase=2&amp;amp;title=New WPF Features: Updated File Dialogs" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/12/new-wpf-features-updated-file-dialogs.aspx&amp;amp;title=New WPF Features: Updated File Dialogs" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=New WPF Features: Updated File Dialogs &amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/12/new-wpf-features-updated-file-dialogs.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/12/new-wpf-features-updated-file-dialogs.aspx&amp;amp;title=New WPF Features: Updated File Dialogs" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/12/new-wpf-features-updated-file-dialogs.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/12/new-wpf-features-updated-file-dialogs.aspx&amp;amp;title=New WPF Features: Updated File Dialogs" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/12/new-wpf-features-updated-file-dialogs.aspx&amp;amp;title=New WPF Features: Updated File Dialogs" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9919594" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term=".NET 4" scheme="http://blogs.msdn.com/llobo/archive/tags/.NET+4/default.aspx" /><category term="File Dialogs" scheme="http://blogs.msdn.com/llobo/archive/tags/File+Dialogs/default.aspx" /></entry><entry><title>XAML 2009 Features: XAML Event handling</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/11/xaml-2009-features-xaml-event-handling.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="38838" href="http://blogs.msdn.com/llobo/attachment/9918921.ashx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/11/xaml-2009-features-xaml-event-handling.aspx</id><published>2009-11-11T15:14:00Z</published><updated>2009-11-11T15:14:00Z</updated><content type="html">&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;FONT size=3 face=Calibri&gt;[&lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;This is part of a &lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;FONT color=#dd4a21&gt;series&lt;/FONT&gt;&lt;/A&gt; on New WPF\XAML Features]&lt;/SPAN&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;In previous releases, when loose XAML had events in it and was loaded it would crash. In V4, there are 2 options to avoid this crash.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;à&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt; On loading events are searched on the root object of the XAML file. Suppose you had the loose XAML like the below&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;local&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;MyStackPanel&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&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: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="http://schemas.microsoft.com/winfx/2006/xaml/presentation"&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&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: red"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;xmlns&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;local&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt; ="clr-namespace:DemoApp;assembly=DemoApp"&amp;gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&gt;Button&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;Click&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: blue; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;="Button_Click"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&gt; &lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&gt;Date (Event on Root)&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&gt;Button&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;As long as the root object (in this case MyStackPanel) can be found, the event will be hooked and will work fine without a crash&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'; mso-bidi-font-family: Arial; mso-ascii-font-family: Arial; mso-hansi-font-family: Arial; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;à&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt; The second approach is to define a MarkupExtension that returns a delegate and assign this to the event. So you could have XAML like the below &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt 0.5in; mso-layout-grid-align: none; mso-add-space: auto" class=MsoListParagraphCxSpFirst&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt 0.5in; mso-layout-grid-align: none; mso-add-space: auto" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Button&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Click&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="{&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;DelegateCreatingME&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}"/&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt 0.5in; mso-layout-grid-align: none; mso-add-space: auto" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Button&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Click&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="{&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;DelegateCreatingME&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="BACKGROUND: yellow; mso-highlight: yellow"&gt;ChangeFontSize&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}" &amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt 0.5in; mso-layout-grid-align: none; mso-add-space: auto" class=MsoListParagraphCxSpMiddle&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Button&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Click&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="{&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;DelegateCreatingME&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; ChangeForeground&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;,&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; BACKGROUND: yellow; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas; mso-highlight: yellow"&gt;Brown&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}" /&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt 0.5in" class=MsoListParagraphCxSpLast&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;IMG src="http://blogs.msdn.com/photos/llester/images/9918919/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9918919/original.aspx"&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;The sample project&amp;nbsp;using the &lt;A href="http://coremvvm.codeplex.com/" mce_href="http://coremvvm.codeplex.com/"&gt;CoreMVVM&lt;/A&gt; library is &lt;A href="http://blogs.msdn.com/llobo/attachment/9918921.ashx" mce_href="http://blogs.msdn.com/llobo/attachment/9918921.ashx"&gt;attached&lt;/A&gt;.&lt;/o:p&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&lt;EM&gt;&amp;nbsp;Note that XAML 2009 features work only for loose XAML in WPF.&lt;/EM&gt;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/11/xaml-2009-features-xaml-event-handling.aspx&amp;amp;subject=XAML 2009 Features: XAML Event handling" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/11/xaml-2009-features-xaml-event-handling.aspx&amp;amp;phase=2&amp;amp;title=XAML 2009 Features: XAML Event handling" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/11/xaml-2009-features-xaml-event-handling.aspx&amp;amp;title=XAML 2009 Features: XAML Event handling" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=XAML 2009 Features: XAML Event handling &amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/11/xaml-2009-features-xaml-event-handling.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/11/xaml-2009-features-xaml-event-handling.aspx&amp;amp;title=XAML 2009 Features: XAML Event handling" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/11/xaml-2009-features-xaml-event-handling.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/11/xaml-2009-features-xaml-event-handling.aspx&amp;amp;title=XAML 2009 Features: XAML Event handling" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/11/xaml-2009-features-xaml-event-handling.aspx&amp;amp;title=XAML 2009 Features: XAML Event handling" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9918921" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term=".NET 4" scheme="http://blogs.msdn.com/llobo/archive/tags/.NET+4/default.aspx" /><category term="XAML 2009 features" scheme="http://blogs.msdn.com/llobo/archive/tags/XAML+2009+features/default.aspx" /><category term="Event Handling" scheme="http://blogs.msdn.com/llobo/archive/tags/Event+Handling/default.aspx" /></entry><entry><title>New WPF Features: Cached Composition</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="116185" href="http://blogs.msdn.com/llobo/attachment/9917393.ashx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx</id><published>2009-11-10T16:25:00Z</published><updated>2009-11-10T16:25:00Z</updated><content type="html">&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;This is part of a &lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;FONT color=#dd4a21&gt;series&lt;/FONT&gt;&lt;/A&gt; on New WPF Features&lt;/SPAN&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;One of the big improvements in 4.0 is the Cached Composition feature in graphics. This feature enables caching a live UIElement as a bitmap, which enables quick rendering of the element as a bitmap. The UIElement is user interactive and hence will respond to keyboard input, mouse clicks,… Also, transforms, effects,.. which operate on top will not cause the cache to regenerated resulting in better performance. Previously, it was common to use RenderTargetBitmap for this purpose. However, this would be at the cost of interactivity.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Lets jump into usage. You have the BitmapCache and the BitmapCacheBrush classes. The former is useful in rendering a complex UIElement while the latter facilitates better reuse of a cached element. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Usage of BitmapCache is shown below. RenderAtScale is helpful for zoom scenarios since it a cache which is multiple of the original bitmap size. Note that changing the UIElement subtree or these properties (EnableClearType\RenderAtScale) will cause the cache to be regenerated.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt 0.5in; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Canvas.CacheMode&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt 0.5in; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;BitmapCache&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; EnableClearType&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="False"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; RenderAtScale&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="2"/&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt 0.5in; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Canvas.CacheMode&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt 0.5in; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt 0.5in; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Canvas&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; CacheMode&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="BitmapCache"/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;BitmapCacheBrush is useful when you need to paint the same content on multiple elements. A sample usage is below.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Grid.Resources&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Image&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="cachedImage"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Source&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="Xaml.jpg" &amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Image.CacheMode&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;BitmapCache&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; EnableClearType&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="False"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; RenderAtScale&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="1"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; SnapsToDevicePixels&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="False"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; &lt;SPAN style="COLOR: blue"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;/&amp;gt;&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Image.CacheMode&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Image&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;BitmapCacheBrush&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; x&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;:&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Key&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="cachedImageBrush"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Target&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="{&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;StaticResource&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; cachedImage&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}" /&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Grid.Resources&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Button&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Background&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="{&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;StaticResource&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; cachedImageBrush&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Content&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="Tile1"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Grid.Column&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="1"/&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;Button&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Background&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="{&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;StaticResource&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; cachedImageBrush&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Content&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="Tile2"&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: red; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; Grid.Column&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;="2"/&amp;gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #a31515; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;...&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;Got a couple of apps in place to show the usage. The one on the left shows the zoom in action while the second app&amp;nbsp;applies the cacheMode on Viewport2dVisual3D.&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;IMG src="http://blogs.msdn.com/photos/llester/images/9917382/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9917382/original.aspx"&gt;&lt;IMG style="WIDTH: 304px; HEIGHT: 298px" src="http://blogs.msdn.com/photos/llester/images/9917385/original.aspx" width=305 height=374 mce_src="http://blogs.msdn.com/photos/llester/images/9917385/original.aspx"&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;The code is &lt;A href="http://blogs.msdn.com/llobo/attachment/9917393.ashx" mce_href="http://blogs.msdn.com/llobo/attachment/9917393.ashx"&gt;attached&lt;/A&gt;. Have fun&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx&amp;amp;subject=New WPF Features: Cached Composition" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx&amp;amp;phase=2&amp;amp;title=New WPF Features: Cached Composition" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx&amp;amp;title=New WPF Features: Cached Composition" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=New WPF Features: Cached Composition &amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx&amp;amp;title=New WPF Features: Cached Composition" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx&amp;amp;title=New WPF Features: Cached Composition" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/10/new-wpf-features-cached-composition.aspx&amp;amp;title=New WPF Features: Cached Composition" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9917393" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term=".NET 4" scheme="http://blogs.msdn.com/llobo/archive/tags/.NET+4/default.aspx" /><category term="Cached Composition" scheme="http://blogs.msdn.com/llobo/archive/tags/Cached+Composition/default.aspx" /></entry><entry><title>XAML 2009 Features: Node Loop flexibility</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/llobo/archive/2009/11/09/xaml-2009-features-node-loop-flexibility.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="9029" href="http://blogs.msdn.com/llobo/attachment/9918266.ashx" /><id>http://blogs.msdn.com/llobo/archive/2009/11/09/xaml-2009-features-node-loop-flexibility.aspx</id><published>2009-11-09T15:57:00Z</published><updated>2009-11-09T15:57:00Z</updated><content type="html">&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;[&lt;SPAN style="FONT-FAMILY: 'Arial','sans-serif'; FONT-SIZE: 10pt; mso-fareast-font-family: 'Times New Roman'"&gt;This is part of a &lt;A href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" mce_href="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx"&gt;&lt;FONT color=#dd4a21&gt;series&lt;/FONT&gt;&lt;/A&gt; on New WPF\XAML Features]&lt;/SPAN&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;So by now most of you must have noticed the System.Xaml dll as part of your .NET 4 WPF projects. It’s a well componentized XAML stack that provides a lot of flexibility working with XAML. So at the core we a System.Xaml.XamlReader and XamlWriter which provide the base implementation and definition for a reader and writer. XamlXmlReader is a reader that reads in XAML and produces a XAML node stream. This stream is then consumed by a &lt;/FONT&gt;&lt;FONT size=3&gt;&lt;S&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt;XamlXmlWriter&lt;/SPAN&gt;&lt;/S&gt;&lt;SPAN style="mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri"&gt; XamlObjectWriter &lt;/SPAN&gt;&lt;/FONT&gt;&lt;FONT size=3&gt;to produce the object graph. Similarly for the Save path, you have the XamlObjectReader and XamlXmlWriter.&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;So the Load Path looks like&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;XAML &lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;à&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; XXR &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;à&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; Node Stream &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;à&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; XOW &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;à&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; Object Graph&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;The Save path would look like&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Object Graph &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;à&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; XOR &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;à&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; Node Stream &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;à&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; XXW &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;à&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt; XAML&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT face=Calibri&gt;&lt;FONT size=3&gt;Prior to .NET 4, you didn’t have access to the internals; the access points were XamlReader.Load and XamlWriter.Save in PresentationFramework. In .NET 4, we provide access to the node stream and you could manipulate this node loop. There are 7 &lt;A href="http://msdn.microsoft.com/en-us/library/system.xaml.xamlnodetype(VS.100).aspx" mce_href="http://msdn.microsoft.com/en-us/library/system.xaml.xamlnodetype(VS.100).aspx"&gt;XamlNodeType’s&lt;/A&gt; that you need to look out for in this node loop. &lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;An example of a node loop could be filtering out events and unknown elements. Wouldn’t that make a nice feature in XamlPadX &lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;SPAN style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;J&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;..&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The code below shows how we could replace the Window in&amp;nbsp;the Xaml passed with a Page.&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #2b91af; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #2b91af; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;XmlReader&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; xmlReader = &lt;SPAN style="COLOR: #2b91af"&gt;XmlReader&lt;/SPAN&gt;.Create(input);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #2b91af; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;XamlXmlReader&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; reader = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;XamlXmlReader&lt;/SPAN&gt;(xmlReader, System.Windows.Markup.&lt;SPAN style="COLOR: #2b91af"&gt;XamlReader&lt;/SPAN&gt;.GetWpfSchemaContext());&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: #2b91af; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;XamlObjectWriter&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; writer = &lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;XamlObjectWriter&lt;/SPAN&gt;(reader.SchemaContext);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; COLOR: blue; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;while&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt; (reader.Read())&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;switch&lt;/SPAN&gt; (reader.NodeType)&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;case&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;XamlNodeType&lt;/SPAN&gt;.StartObject:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;if&lt;/SPAN&gt; (!reader.Type.Name.Equals(&lt;SPAN style="COLOR: #a31515"&gt;"Window"&lt;/SPAN&gt;))&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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; &lt;/SPAN&gt;writer.WriteNode(reader);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;else&lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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; &lt;/SPAN&gt;writer.WriteStartObject(&lt;SPAN style="COLOR: blue"&gt;new&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;XamlType&lt;/SPAN&gt;(&lt;SPAN style="COLOR: blue"&gt;typeof&lt;/SPAN&gt;(&lt;SPAN style="COLOR: #2b91af"&gt;Page&lt;/SPAN&gt;), reader.SchemaContext));&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;break&lt;/SPAN&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;o:p&gt;&amp;nbsp;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;case&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;XamlNodeType&lt;/SPAN&gt;.EndObject:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;case&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;XamlNodeType&lt;/SPAN&gt;.StartMember:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;case&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;XamlNodeType&lt;/SPAN&gt;.EndMember:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;case&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;XamlNodeType&lt;/SPAN&gt;.Value:&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;case&lt;/SPAN&gt; &lt;SPAN style="COLOR: #2b91af"&gt;XamlNodeType&lt;/SPAN&gt;.GetObject:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;FONT color=#0000ff size=2 face=Consolas&gt;&lt;FONT color=#0000ff size=2 face=Consolas&gt;&lt;FONT color=#0000ff size=2 face=Consolas&gt;case&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2 face=Consolas&gt;&lt;FONT size=2 face=Consolas&gt; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#2b91af size=2 face=Consolas&gt;&lt;FONT color=#2b91af size=2 face=Consolas&gt;&lt;FONT color=#2b91af size=2 face=Consolas&gt;XamlNodeType&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=2 face=Consolas&gt;&lt;FONT size=2 face=Consolas&gt;.NamespaceDeclaration:&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;writer.WriteNode(reader);&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&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;break&lt;/SPAN&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;&lt;SPAN style="mso-spacerun: yes"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="LINE-HEIGHT: normal; MARGIN: 0in 0in 0pt; mso-layout-grid-align: none" class=MsoNormal&gt;&lt;SPAN style="FONT-FAMILY: Consolas; FONT-SIZE: 9.5pt; mso-bidi-font-family: Consolas"&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;o:p&gt;&lt;FONT size=3 face=Calibri&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Attached is a &lt;A href="http://blogs.msdn.com/llobo/attachment/9918266.ashx" mce_href="http://blogs.msdn.com/llobo/attachment/9918266.ashx"&gt;project&lt;/A&gt; that shows how events\unknown elements could be filtered. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P style="MARGIN: 0in 0in 10pt" class=MsoNormal&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;o:p&gt;&lt;IMG src="http://blogs.msdn.com/photos/llester/images/9918179/original.aspx" mce_src="http://blogs.msdn.com/photos/llester/images/9918179/original.aspx"&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;DIV class=shareblock align=center&gt;&lt;STRONG&gt;Share this post&lt;BR&gt;&lt;/STRONG&gt;&lt;A title="Share via Email" href="mailto:?body=Thought you might like this: http://blogs.msdn.com/llobo/archive/2009/11/09/xaml-2009-features-node-loop-flexibility.aspx&amp;amp;subject=XAML 2009 Features: Node Loop flexibility" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445315/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to digg.com" href="http://www.digg.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/09/xaml-2009-features-node-loop-flexibility.aspx&amp;amp;phase=2&amp;amp;title=XAML 2009 Features: Node Loop flexibility" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445312/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to reddit.com" href="http://reddit.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/09/xaml-2009-features-node-loop-flexibility.aspx&amp;amp;title=XAML 2009 Features: Node Loop flexibility" target=_blank&gt;&lt;/A&gt;&lt;A title="Submit to blinklist.com" href="http://blinklist.com/index.php?Action=Blink/addblink.php&amp;amp;title=XAML 2009 Features: Node Loop flexibility &amp;amp;Url=http://blogs.msdn.com/llobo/archive/2009/11/09/xaml-2009-features-node-loop-flexibility.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445310/original.aspx"&gt;&lt;/A&gt;&lt;A style="PADDING-LEFT: 4px" title="Submit to dotnetkicks.com" href="http://www.dotnetkicks.com/submit/?url=http://blogs.msdn.com/llobo/archive/2009/11/09/xaml-2009-features-node-loop-flexibility.aspx&amp;amp;title=XAML 2009 Features: Node Loop flexibility" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445375/original.aspx"&gt;&lt;/A&gt;&lt;A title="Submit to furl.net" href="http://furl.net/storeIt.jsp?u=http://blogs.msdn.com/llobo/archive/2009/11/09/xaml-2009-features-node-loop-flexibility.aspx" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445313/original.aspx"&gt;&lt;/A&gt; &lt;A title="Submit to del.icio.us" href="http://del.icio.us/post?url=http://blogs.msdn.com/llobo/archive/2009/11/09/xaml-2009-features-node-loop-flexibility.aspx&amp;amp;title=XAML 2009 Features: Node Loop flexibility" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/1445311/original.aspx"&gt;&lt;/A&gt;&lt;A title="Stumble It" href="http://www.stumbleupon.com/submit?url=http://blogs.msdn.com/llobo/archive/2009/11/09/xaml-2009-features-node-loop-flexibility.aspx&amp;amp;title=XAML 2009 Features: Node Loop flexibility" target=_blank&gt;&lt;IMG border=0 src="http://blogs.msdn.com/photos/llester/images/9191709/original.aspx"&gt;&lt;/A&gt; &lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9918266" width="1" height="1"&gt;</content><author><name>llester</name><uri>http://blogs.msdn.com/members/llester.aspx</uri></author><category term="New WPF 4 features" scheme="http://blogs.msdn.com/llobo/archive/tags/New+WPF+4+features/default.aspx" /><category term=".NET 4" scheme="http://blogs.msdn.com/llobo/archive/tags/.NET+4/default.aspx" /><category term="XAML 2009 features" scheme="http://blogs.msdn.com/llobo/archive/tags/XAML+2009+features/default.aspx" /><category term="Node Loop" scheme="http://blogs.msdn.com/llobo/archive/tags/Node+Loop/default.aspx" /></entry></feed>