<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Synergist</title><link>http://blogs.msdn.com/b/synergist/</link><description>Combining Software in Amazing Ways</description><dc:language>en-US</dc:language><generator>Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Synergist" /><feedburner:info uri="synergist" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><title>Windows Store App Xaml GridView with Variable Templates</title><link>http://feedproxy.google.com/~r/Synergist/~3/EKZbtHmfmOo/windows-store-app-xaml-gridview-with-variable-templates.aspx</link><pubDate>Tue, 25 Sep 2012 19:49:52 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10353159</guid><dc:creator>Synergist</dc:creator><slash:comments>3</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/synergist/rsscomments.aspx?WeblogPostID=10353159</wfw:commentRss><comments>http://blogs.msdn.com/b/synergist/archive/2012/09/25/windows-store-app-xaml-gridview-with-variable-templates.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-83-05-metablogapi/7288.image_5F00_584F282B.png"&gt;&lt;img title="image" style="border-left-width: 0px; border-right-width: 0px; background-image: none; border-bottom-width: 0px; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-top-width: 0px" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-83-05-metablogapi/3301.image_5F00_thumb_5F00_57E2F536.png" width="644" height="391" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;One of the useful controls to use when creating a Windows Store app for Windows 8 is the &lt;a href="http://msdn.microsoft.com/EN-US/library/windows/apps/windows.ui.xaml.controls.gridview(v=vs.10).aspx" target="_blank"&gt;GridView&lt;/a&gt; which can use a &lt;a href="http://msdn.microsoft.com/EN-US/library/windows/apps/windows.ui.xaml.controls.variablesizedwrapgrid(v=vs.10).aspx" target="_blank"&gt;VariableSizeWrapGrid&lt;/a&gt; to support item templates of varying size.&amp;#160; Using this in conjunction with an &lt;a href="http://msdn.microsoft.com/EN-US/library/windows/apps/windows.ui.xaml.controls.datatemplateselector(v=vs.10).aspx" target="_blank"&gt;DataTemplateSelector&lt;/a&gt; makes it possible to vary both the size and data template of the items in a GridView.&amp;#160; Here is how you do it:&lt;/p&gt;  &lt;h1&gt;Setting the VariableSizeWrapGrid Item Height and Width&lt;/h1&gt;  &lt;p&gt;The VariableSizeWrapGrid works with a unit size and you can define whatever unit size you want – each template should be a multiple of that.&amp;#160; In your GridView.GroupStyle, you should define the ItemHeight and ItemWidth.&amp;#160; Add the spacing between the columns &amp;amp; rows; based on the &lt;a href="http://msdn.microsoft.com/en-us/library/windows/apps/hh872191.aspx" target="_blank"&gt;Microsoft guidelines&lt;/a&gt;, the height and width should be layed out on a 20-pixel grid and the spacing should be 10 pixels between each item.&amp;#160; So in this case each item would be 200x100 with 10-pixel spacing, so ItemWidth=210 and ItemHeight=110.&lt;/p&gt;  &lt;pre class="csharpcode"&gt;&amp;lt;GroupStyle.Panel&amp;gt;
    &amp;lt;ItemsPanelTemplate&amp;gt;
        &amp;lt;VariableSizedWrapGrid Orientation=&lt;span class="str"&gt;&amp;quot;Vertical&amp;quot;&lt;/span&gt; 
            Margin=&lt;span class="str"&gt;&amp;quot;0,0,80,0&amp;quot;&lt;/span&gt; 
            ItemHeight=&lt;span class="str"&gt;&amp;quot;110&amp;quot;&lt;/span&gt; 
            ItemWidth=&lt;span class="str"&gt;&amp;quot;210&amp;quot;&lt;/span&gt;/&amp;gt;
    &amp;lt;/ItemsPanelTemplate&amp;gt;
&amp;lt;/GroupStyle.Panel&amp;gt;&lt;/pre&gt;


&lt;h1&gt;Create Data Templates for each item type&lt;/h1&gt;

&lt;p&gt;Create Data Templates in a resource file that would be used for each item type.&amp;#160; In this case, I have a ProjectItemTemplate and&amp;#160; FavoriteProjectItemTemplate in a Xaml resource file included in my App.xaml.&amp;#160; The FavoriteProjectItemTemplate shows a Gold Star (xE082 in the Segoe UI Symbol) and additional project information that I only want to load for favorite projects:&lt;/p&gt;

&lt;pre class="csharpcode"&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;DataTemplate&lt;/span&gt; &lt;span class="attr"&gt;x:Key&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;ProjectItemTemplate&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt; &lt;span class="attr"&gt;HorizontalAlignment&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Left&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Background&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource ListViewItemOverlayBackgroundThemeBrush}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Width&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;200&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Height&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;100&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt; &lt;span class="attr"&gt;Margin&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;5&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding Name}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Foreground&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource ListViewItemOverlayForegroundThemeBrush}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource TitleTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding Description}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Foreground&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource ListViewItemOverlaySecondaryForegroundThemeBrush}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;TextWrapping&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;NoWrap&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding UpdatedAt}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Foreground&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource ListViewItemOverlaySecondaryForegroundThemeBrush}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;TextWrapping&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;NoWrap&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;DataTemplate&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;DataTemplate&lt;/span&gt; &lt;span class="attr"&gt;x:Key&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;FavoriteProjectItemTemplate&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt; &lt;span class="attr"&gt;HorizontalAlignment&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Left&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Background&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource ListViewItemOverlayBackgroundThemeBrush}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Width&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;200&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Height&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;210&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;HorizontalAlignment&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Right&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;VerticalAlignment&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Top&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;x:Name&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Star&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;TextWrapping&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Wrap&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;&amp;amp;#xE082;&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;FontFamily&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Segoe UI Symbol&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Foreground&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Gold&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;FontSize&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;24&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Margin&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;0,5,10,0&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt; &lt;span class="attr"&gt;Margin&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;5&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding Name}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Foreground&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource ListViewItemOverlayForegroundThemeBrush}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource TitleTextStyle}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Margin&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;0,0,32,0&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding Description}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Foreground&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource ListViewItemOverlaySecondaryForegroundThemeBrush}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;TextWrapping&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;NoWrap&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding UpdatedAt}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Foreground&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource ListViewItemOverlaySecondaryForegroundThemeBrush}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;TextWrapping&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;NoWrap&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt; &lt;span class="attr"&gt;Orientation&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Horizontal&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding Aspects[0].Items.Count}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot; discussions&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt; &lt;span class="attr"&gt;Orientation&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Horizontal&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding Aspects[1].Items.Count}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot; todos&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt; &lt;span class="attr"&gt;Orientation&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Horizontal&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding Aspects[2].Items.Count}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot; files&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt; &lt;span class="attr"&gt;Orientation&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Horizontal&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding Aspects[3].Items.Count}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot; text documents&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt; &lt;span class="attr"&gt;Orientation&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Horizontal&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding Aspects[4].Items.Count}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot; dates&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt; &lt;span class="attr"&gt;Orientation&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;Horizontal&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{Binding Aspects[5].Items.Count}&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;TextBlock&lt;/span&gt; &lt;span class="attr"&gt;Text&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot; people&amp;quot;&lt;/span&gt; &lt;span class="attr"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;{StaticResource CaptionTextStyle}&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;
                &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
            &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Grid&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;DataTemplate&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;


&lt;h1&gt;Create an Item Template Selector&lt;/h1&gt;

&lt;h1&gt;&lt;/h1&gt;

&lt;p&gt;The Item Template Selector is called each time a new item template is needed.&amp;#160; In this, you should pick the item template and set the number of columns &amp;amp; rows the item should span.&amp;#160; In this case if the project.IsStarred is true, then the template would use the FavoriteProjectItemTemplate and set VariableSizedWrapGrid to span 2 rows instead of 1.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;    &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; ProjectDataTemplateSelector : DataTemplateSelector
    {
        &lt;span class="kwrd"&gt;protected&lt;/span&gt; &lt;span class="kwrd"&gt;override&lt;/span&gt; Windows.UI.Xaml.DataTemplate SelectTemplateCore(&lt;span class="kwrd"&gt;object&lt;/span&gt; item, Windows.UI.Xaml.DependencyObject container)
        {
            var project = item &lt;span class="kwrd"&gt;as&lt;/span&gt; Project;

            var uiElement = container &lt;span class="kwrd"&gt;as&lt;/span&gt; UIElement;

            &lt;span class="kwrd"&gt;if&lt;/span&gt; (project.IsStarred)
            {
                VariableSizedWrapGrid.SetColumnSpan(uiElement, 1);
                VariableSizedWrapGrid.SetRowSpan(uiElement, 2);

                &lt;span class="kwrd"&gt;return&lt;/span&gt; App.Current.Resources[&lt;span class="str"&gt;&amp;quot;FavoriteProjectItemTemplate&amp;quot;&lt;/span&gt;] &lt;span class="kwrd"&gt;as&lt;/span&gt; DataTemplate;
            }

            VariableSizedWrapGrid.SetColumnSpan(uiElement, 1);
            VariableSizedWrapGrid.SetRowSpan(uiElement, 1);

            &lt;span class="kwrd"&gt;return&lt;/span&gt; App.Current.Resources[&lt;span class="str"&gt;&amp;quot;ProjectItemTemplate&amp;quot;&lt;/span&gt;] &lt;span class="kwrd"&gt;as&lt;/span&gt; DataTemplate;
        }
    }&lt;/pre&gt;


&lt;h1&gt;Adding the ItemTemplateSelector to the GridView&lt;/h1&gt;

&lt;p&gt;On the page resources, add an instance of the ItemTemplateSelector and then reference it in the GridView.ItemTemplateSelector=”{StaticResources ProjectTemplateSelector}”&lt;/p&gt;

&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;support:ProjectDataTemplateSelector&lt;/span&gt; &lt;span class="attr"&gt;x:Key&lt;/span&gt;&lt;span class="kwrd"&gt;=&amp;quot;ProjectTemplateSelector&amp;quot;&lt;/span&gt;&lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;


&lt;h1&gt;Responding to Changes in the Data Model&lt;/h1&gt;

&lt;p&gt;If the selection criteria changes and you need the selector logic to run again, just reset the selector.&amp;#160; Thanks to &lt;a href="http://stackoverflow.com/questions/11289898/auto-refresh-itemtemplateselector" target="_blank"&gt;this StackOverflow answer&lt;/a&gt; for the assistance here.&lt;/p&gt;

&lt;pre class="csharpcode"&gt;var projects = &lt;span class="kwrd"&gt;this&lt;/span&gt;.selector.SelectedItems.Cast&amp;lt;Project&amp;gt;();

&lt;span class="kwrd"&gt;foreach&lt;/span&gt; (var project &lt;span class="kwrd"&gt;in&lt;/span&gt; projects)
{
    project.IsStarred = !project.IsStarred;
}

var itemTemplateSelector = &lt;span class="kwrd"&gt;this&lt;/span&gt;.selector.ItemTemplateSelector;
&lt;span class="kwrd"&gt;this&lt;/span&gt;.selector.ItemTemplateSelector = &lt;span class="kwrd"&gt;null&lt;/span&gt;;
&lt;span class="kwrd"&gt;this&lt;/span&gt;.selector.ItemTemplateSelector = itemTemplateSelector;&lt;/pre&gt;

&lt;h1&gt;Summary&lt;/h1&gt;

&lt;p&gt;Varying the item template and size of items increase the visual interest of your app and can help highlight important differences when standard DataTemplate binding won’t work.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10353159" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Synergist/~4/EKZbtHmfmOo" height="1" width="1"/&gt;</description><feedburner:origLink>http://blogs.msdn.com/b/synergist/archive/2012/09/25/windows-store-app-xaml-gridview-with-variable-templates.aspx</feedburner:origLink></item><item><title>Making a Great Snapped View for your Web Site on IE10 on Windows 8</title><link>http://feedproxy.google.com/~r/Synergist/~3/Jkrod9acmi0/making-a-great-snapped-view-for-your-web-site-on-ie10-on-windows-8.aspx</link><pubDate>Tue, 24 Apr 2012 03:11:15 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10296966</guid><dc:creator>Synergist</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/synergist/rsscomments.aspx?WeblogPostID=10296966</wfw:commentRss><comments>http://blogs.msdn.com/b/synergist/archive/2012/04/23/making-a-great-snapped-view-for-your-web-site-on-ie10-on-windows-8.aspx#comments</comments><description>&lt;p&gt;One of the great features of Windows 8 Metro Applications is the &lt;a href="http://msdn.microsoft.com/en-us/library/windows/apps/hh465371.aspx"&gt;Snapped View&lt;/a&gt; where app developers create a 320px wide view of their app.&amp;#160; When the user snaps their app to the left or the right of the screen they can continue using their primary app while still having the secondary app visible in a thinner view.&amp;#160; The project templates in Visual Studio come with this capability built-in to make it easier to address this important part of the application experience.&amp;#160; If you build your Metro application with HTML, you see that this is done with &lt;a href="http://www.w3.org/TR/css3-mediaqueries/"&gt;CSS Media Queries&lt;/a&gt;, a feature supported in all HTML5 modern browsers.&amp;#160; This is also the way that you support snapped view for your website, with the &lt;a href="http://msdn.microsoft.com/library/ie/hh708740.aspx"&gt;@-ms-viewport&lt;/a&gt; rule (since it’s Microsoft-specific today, it has the –ms- prefix and can be safely ignored by other browsers.&lt;/p&gt;  &lt;pre class="csharpcode"&gt;@media screen and (max-width: 400px) {
  @-ms-viewport { width: 320px; }
  &lt;span class="rem"&gt;/* CSS for 320px width snapped view goes here */&lt;/span&gt;
} &lt;/pre&gt;

&lt;p&gt;Since Mobile browsers like Windows Phone’s IE and the iPhone both report their width as 320 px, you may be able to reuse the media queries that you created for mobile for the snapped view by adding one line of css to your style sheet.&amp;#160; If you are intrigued by CSS Media Queries, and want to see more examples of responsive design that use them, take a look at the &lt;a href="http://mediaqueri.es/"&gt;Media Queries&lt;/a&gt; site which hosts a great collection of them.&amp;#160; &lt;/p&gt;

&lt;p&gt;You can also take a look at a site that I’ve been working on that uses media queries and implements the snapped mode media query at &lt;a href="http://timelapseapp.com/"&gt;TimeLapseApp.com.&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-83-05-metablogapi/2818.Screenshot_2D00_5_5F00_4B2BEE88.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Screenshot (5)" border="0" alt="Screenshot (5)" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-83-05-metablogapi/6710.Screenshot_2D00_5_5F00_thumb_5F00_0A1D6F24.png" width="138" height="312" /&gt;&lt;/a&gt;&amp;#160;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-83-05-metablogapi/5141.Screenshot_2D00_4_5F00_69962F71.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="Screenshot (4)" border="0" alt="Screenshot (4)" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-83-05-metablogapi/4478.Screenshot_2D00_4_5F00_thumb_5F00_754B76A3.png" width="552" height="312" /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;More details&lt;/h3&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/library/ie/hh708740.aspx"&gt;IE10 Device Adaptation on MSDN&lt;/a&gt; &lt;/li&gt;

  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/windows/apps/hh465371.aspx"&gt;Guidelines for Snapped and Filled Views on MSDN&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10296966" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Synergist/~4/Jkrod9acmi0" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/synergist/archive/tags/Metro/">Metro</category><category domain="http://blogs.msdn.com/b/synergist/archive/tags/IE10/">IE10</category><category domain="http://blogs.msdn.com/b/synergist/archive/tags/Windows+8/">Windows 8</category><feedburner:origLink>http://blogs.msdn.com/b/synergist/archive/2012/04/23/making-a-great-snapped-view-for-your-web-site-on-ie10-on-windows-8.aspx</feedburner:origLink></item><item><title>My Favorite New Features of Windows Phone 7 Mango</title><link>http://feedproxy.google.com/~r/Synergist/~3/6r_p26cxnQ0/my-favorite-new-features-of-windows-phone-7-mango.aspx</link><pubDate>Sat, 01 Oct 2011 07:28:57 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10218770</guid><dc:creator>Synergist</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/synergist/rsscomments.aspx?WeblogPostID=10218770</wfw:commentRss><comments>http://blogs.msdn.com/b/synergist/archive/2011/10/01/my-favorite-new-features-of-windows-phone-7-mango.aspx#comments</comments><description>&lt;p&gt;A few days ago I got a notice over my phone that an update was ready to be installed and I should connect it to my computer.&amp;#160; Mango had arrived for my Dell Venue Pro on T-Mobile’s network.&amp;#160; I connected my phone to my computer and proceeded to update the phone.&amp;#160; A few minutes later it was ready.&amp;#160; Now after using it for a few days, I am really happy with so many of the new features.&amp;#160; I’d like to share my favorites with you:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Turn-by-turn audible directions on Bing maps&lt;/li&gt;    &lt;li&gt;Podcasts are now in the Marketplace and you can now subscribe to them&lt;/li&gt;    &lt;li&gt;Visual Voice Mail – I had to enable/disable/enable this on the T-Mobile account website but finally it is working&lt;/li&gt;    &lt;li&gt;Quick App Switching/Multitasking&lt;/li&gt;    &lt;li&gt;Easy check-in to locations&lt;/li&gt;    &lt;li&gt;Integrated Messenger/SMS/Facebook Chat&lt;/li&gt;    &lt;li&gt;Twitter &amp;amp; LinkedIn integration&lt;/li&gt;    &lt;li&gt;Ability to open and Share Office documents on SkyDrive&lt;/li&gt;    &lt;li&gt;Pinning a playlist to my home screen&lt;/li&gt;    &lt;li&gt;Pinning an Outlook folder to my home screen&lt;/li&gt;    &lt;li&gt;Groups in the People hub (and pinning groups)&lt;/li&gt;    &lt;li&gt;Auto-Fix for photos&lt;/li&gt;    &lt;li&gt;Upload videos from the phone to Facebook&lt;/li&gt;    &lt;li&gt;New HTML5 IE9 &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;What are your favorite Windows Phone 7 Mango features?&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10218770" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Synergist/~4/6r_p26cxnQ0" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/synergist/archive/tags/WP7/">WP7</category><feedburner:origLink>http://blogs.msdn.com/b/synergist/archive/2011/10/01/my-favorite-new-features-of-windows-phone-7-mango.aspx</feedburner:origLink></item><item><title>Teaching Computer Programming at Home</title><link>http://feedproxy.google.com/~r/Synergist/~3/bEfi6qxQK60/teaching-computer-programming-at-home.aspx</link><pubDate>Mon, 27 Jun 2011 16:16:27 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10179493</guid><dc:creator>Synergist</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/synergist/rsscomments.aspx?WeblogPostID=10179493</wfw:commentRss><comments>http://blogs.msdn.com/b/synergist/archive/2011/06/27/teaching-computer-programming-at-home.aspx#comments</comments><description>&lt;p&gt;This past week I had a great time teaching my 9-year-old son Alex and 9 of his friends computer programming in my home.&amp;#160; I used &lt;a href="http://fuse.microsoft.com/project/kodu.aspx" target="_blank"&gt;Kodu&lt;/a&gt; Game Lab and &lt;a href="http://smallbasic.com/" target="_blank"&gt;Small Basic&lt;/a&gt;, two free tools created for kids to learn programming. I wrote a series of blog posts about it on my personal site &lt;a href="http://www.charette.com" target="_blank"&gt;Charette.com&lt;/a&gt;:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://charette.com/blog/about-to-start-fairfax-computer-camp/"&gt;http://charette.com/blog/about-to-start-fairfax-computer-camp/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://charette.com/blog/fairfax-computer-camp-day-1-kodu-game-lab/"&gt;http://charette.com/blog/fairfax-computer-camp-day-1-kodu-game-lab/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://charette.com/blog/fairfax-computer-camp-day-2-small-basic-and-turtle-programming/"&gt;http://charette.com/blog/fairfax-computer-camp-day-2-small-basic-and-turtle-programming/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://charette.com/blog/fairfax-computer-camp-day-3-small-basic-and-kodu/"&gt;http://charette.com/blog/fairfax-computer-camp-day-3-small-basic-and-kodu/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://charette.com/blog/fairfax-computer-camp-day-4-building-and-testing-kodu-games/"&gt;http://charette.com/blog/fairfax-computer-camp-day-4-building-and-testing-kodu-games/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://charette.com/blog/fairfax-computer-camp-day-5-kodu-games-completed/"&gt;http://charette.com/blog/fairfax-computer-camp-day-5-kodu-games-completed/&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Has anyone else had an experience teaching programming at home?&amp;#160; Please share it.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10179493" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Synergist/~4/bEfi6qxQK60" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/synergist/archive/tags/Kodu/">Kodu</category><category domain="http://blogs.msdn.com/b/synergist/archive/tags/Small+Basic/">Small Basic</category><feedburner:origLink>http://blogs.msdn.com/b/synergist/archive/2011/06/27/teaching-computer-programming-at-home.aspx</feedburner:origLink></item><item><title>I’m About to Start Teaching Ten 9-Year Olds Computer Programming</title><link>http://feedproxy.google.com/~r/Synergist/~3/a1BP-MubzWI/i-m-about-to-start-teaching-ten-9-year-olds-computer-programming.aspx</link><pubDate>Fri, 17 Jun 2011 17:00:55 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10176342</guid><dc:creator>Synergist</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/synergist/rsscomments.aspx?WeblogPostID=10176342</wfw:commentRss><comments>http://blogs.msdn.com/b/synergist/archive/2011/06/17/i-m-about-to-start-teaching-ten-9-year-olds-computer-programming.aspx#comments</comments><description>&lt;p&gt;Next week, the Fairfax Computer Camp will open in my home.&amp;#160; As I work from home, I have a bit of flexibility in scheduling my working hours, so I’m attempting an exciting new challenge – how to teach my son Alex computer programming in a fun environment with 9 of his friends.&amp;#160; Take a look &lt;a href="http://charette.com/blog/about-to-start-fairfax-computer-camp/" target="_blank"&gt;here&lt;/a&gt; – I plan on writing about the experience on my website &lt;a href="http://www.charette.com" target="_blank"&gt;Charette.com&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Wish me luck.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10176342" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Synergist/~4/a1BP-MubzWI" height="1" width="1"/&gt;</description><feedburner:origLink>http://blogs.msdn.com/b/synergist/archive/2011/06/17/i-m-about-to-start-teaching-ten-9-year-olds-computer-programming.aspx</feedburner:origLink></item><item><title>Converting SVG to XAML with IE9 and the Microsoft XPS Document Writer</title><link>http://feedproxy.google.com/~r/Synergist/~3/2JDpeqaKIC4/converting-svg-to-xaml-with-ie9-and-the-microsoft-xps-document-writer.aspx</link><pubDate>Wed, 20 Apr 2011 16:56:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10156295</guid><dc:creator>Synergist</dc:creator><slash:comments>3</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/synergist/rsscomments.aspx?WeblogPostID=10156295</wfw:commentRss><comments>http://blogs.msdn.com/b/synergist/archive/2011/04/20/converting-svg-to-xaml-with-ie9-and-the-microsoft-xps-document-writer.aspx#comments</comments><description>&lt;p&gt;There is a growing library of content on the internet in SVG, especially with sites like &lt;a target="_blank" href="http://thenounproject.com/"&gt;The Noun Project&lt;/a&gt;.&amp;nbsp; With a Windows Phone project that I am working on I wanted to use a graphic from the Noun Project.&amp;nbsp; To do this I needed to convert the SVG file to XAML in order to put the graphic into a Silverlight application on the phone as XAML Paths.&amp;nbsp; Here is how I did it:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;I downloaded a SVG file to my computer from the Noun Project&lt;/li&gt;
&lt;li&gt;I double-clicked on the SVG file and it opened up in Internet Explorer 9&lt;/li&gt;
&lt;li&gt;On the Command bar I clicked on the Print Icon&amp;hellip;Page Setup and set all the headers and footers to &amp;ndash;Empty-&lt;/li&gt;
&lt;li&gt;I printed the page using the Microsoft XPS Document Writer and saved the file to my desktop.&lt;/li&gt;
&lt;li&gt;I changed the filename of the file created by the XPS Document Writer from .XSP to .zip and opened the zip archive&lt;/li&gt;
&lt;li&gt;I opened the file Documents\1\Pages\1.fpage from the zip archive in Notepad &amp;ndash; this is XAML text&lt;/li&gt;
&lt;li&gt;I copied everything inside the &amp;lt;FixedPage&amp;gt; which included &amp;lt;Canvas/&amp;gt; and &amp;lt;Path/&amp;gt; elements to my clipboard&lt;/li&gt;
&lt;li&gt;I created a new Canvas element in Expression Blend and pasted the contents of the clipboard into it.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Note: this might not work for all SVG graphics, especially those with more complex combined paths.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10156295" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Synergist/~4/2JDpeqaKIC4" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/synergist/archive/tags/Silverlight/">Silverlight</category><category domain="http://blogs.msdn.com/b/synergist/archive/tags/XAML/">XAML</category><category domain="http://blogs.msdn.com/b/synergist/archive/tags/IE9/">IE9</category><category domain="http://blogs.msdn.com/b/synergist/archive/tags/WP7/">WP7</category><category domain="http://blogs.msdn.com/b/synergist/archive/tags/SVG/">SVG</category><feedburner:origLink>http://blogs.msdn.com/b/synergist/archive/2011/04/20/converting-svg-to-xaml-with-ie9-and-the-microsoft-xps-document-writer.aspx</feedburner:origLink></item><item><title>Silverlight UI Developer Job at Check Six Training Systems</title><link>http://feedproxy.google.com/~r/Synergist/~3/HsX-a3SopdA/silverlight-ui-developer-job-at-check-six-training-systems.aspx</link><pubDate>Tue, 19 Apr 2011 14:55:58 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10155757</guid><dc:creator>Synergist</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/synergist/rsscomments.aspx?WeblogPostID=10155757</wfw:commentRss><comments>http://blogs.msdn.com/b/synergist/archive/2011/04/19/silverlight-ui-developer-job-at-check-six-training-systems.aspx#comments</comments><description>&lt;p&gt;Immediate Opening with one of the fasting growing U.S. companies.&amp;#160; What?&amp;#160; You haven't heard of Check Six Training Systems?&amp;#160; Oh, you will!&amp;#160; Even sooner if you are the right fit for our totally unique, rapidly growing company.&amp;#160; Our roots come from aviation, but we are taking aviation training solutions and applying them to other high performance industries. After the BP offshore disaster, the Oil and Gas companies are struggling with a complex training problem and they know that we have the solution.&amp;#160; Our clients, which include Chevron, Shell, Exxon Mobil, etc. are begging for our Human Performance systems now, but we need your help.....&lt;/p&gt;  &lt;p&gt;We have an immediate need for the best Silverlight / UI Developer and Web Graphics Developer in the Dallas/Fort Worth area.&amp;#160; If you feel that you've got &amp;quot;The Right Stuff&amp;quot;, but you are not from here, we're still interested since a lot of us work virtually.&amp;#160; You’ll be instrumental in the design and development of our Human Performance application's look and feel to make it intuitive, simple and &amp;quot;loveable&amp;quot;.&amp;#160; Best of all, your software will save time, money, and LIVES in high performance industries that drive world economies.&amp;#160; If you are ready to make a difference in addition to embarking on a fantastic career, we are your company. &lt;/p&gt;  &lt;p&gt;&lt;b&gt;&lt;u&gt;Silverlight / UI Developer Job Posting&lt;/u&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;Generous salary and options depending on your contribution.&amp;#160; Substantial bonus opportunity.   &lt;br /&gt;&lt;b&gt;Qualifications: &lt;/b&gt;    &lt;br /&gt;Everybody seems to equate &amp;quot;years&amp;quot; to experience.&amp;#160; If you can work in an agile startup atmosphere and can turn a complex data set into an elegantly simple, yet stable interface, your &amp;quot;years&amp;quot; don't matter to us!&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Mandatory: &lt;/b&gt;    &lt;br /&gt;Experience designing and implementing web-based user interfaces. &lt;/p&gt;  &lt;p&gt;UI portfolio available including Microsoft Silverlight examples.&lt;/p&gt;  &lt;p&gt;Candidates must have current work authorization in the US. We will not sponsor visa candidates.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Desired&lt;/b&gt;:&lt;/p&gt;  &lt;p&gt;Experience building web services and integrating with Microsoft SQL Server 2005 or 2008&lt;/p&gt;  &lt;p&gt;Experience designing and implementing middle tier business logic in C#&lt;/p&gt;  &lt;p&gt;Strong familiarity with web graphic formats and tools&lt;/p&gt;  &lt;p&gt;Experience delivering commercialized software&lt;/p&gt;  &lt;p&gt;Please send your resume and/or portfolio to &lt;a href="mailto:korn@c6ts.com"&gt;korn@c6ts.com&lt;/a&gt;.&amp;#160; &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10155757" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Synergist/~4/HsX-a3SopdA" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/synergist/archive/tags/Silverlight+Jobs/">Silverlight Jobs</category><feedburner:origLink>http://blogs.msdn.com/b/synergist/archive/2011/04/19/silverlight-ui-developer-job-at-check-six-training-systems.aspx</feedburner:origLink></item><item><title>Why I Chose the Dell Venue Pro</title><link>http://feedproxy.google.com/~r/Synergist/~3/lZWXB6R73Jc/why-i-chose-the-dell-venue-pro.aspx</link><pubDate>Fri, 14 Jan 2011 23:33:16 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10116048</guid><dc:creator>Synergist</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/synergist/rsscomments.aspx?WeblogPostID=10116048</wfw:commentRss><comments>http://blogs.msdn.com/b/synergist/archive/2011/01/14/why-i-chose-the-dell-venue-pro.aspx#comments</comments><description>&lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-83-05-metablogapi/4857.image_5F00_6FA43B8E.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; margin: 0px 20px 20px 0px; padding-left: 0px; padding-right: 0px; display: inline; float: left; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="image" border="0" alt="image" align="left" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-83-05-metablogapi/2210.image_5F00_thumb_5F00_5C16DBED.png" width="172" height="240" /&gt;&lt;/a&gt;After more than a month of waiting, I am the proud owner of a new &lt;a href="http://www.dell.com/venuepro" target="_blank"&gt;Dell Venue Pro Windows Phone&lt;/a&gt;.&amp;#160; As a Microsoft employee I had my choice on phones and carriers and I wanted to share the reasoning behind my choice.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;The T-Mobile network has great coverage in my area and where I travel.&amp;#160; Like all carriers today, T-Mobile has &lt;a href="http://www.t-mobile.com/coverage/pcc.aspx" target="_blank"&gt;an interactive coverage map&lt;/a&gt; where I was able to see the quality of coverage in the areas that I care about.&amp;#160; When people ask me about which mobile carrier they should go with, this is the primary determining factor, I always ask them about the carrier quality in the areas that they care about.&amp;#160; If you can’t make call’s it’s not a phone. &lt;/li&gt;    &lt;li&gt;Numerous colleagues have told me that T-Mobile had great customer service.&lt;/li&gt;    &lt;li&gt;After using virtual keyboards on a phones for over a year, I am still horribly inaccurate.&amp;#160; I wanted a phone with a real keyboard that didn’t force me to reorient what I was doing.&amp;#160; The Dell Venue Pro has a great slide-out keyboard and when collapsed, the phone is barely bigger than my former phone, the HTC Imagio. &lt;/li&gt;    &lt;li&gt;The 4.1 inch AMOLED screen is very large and bright making the the graphics beautiful and the text crisp.&amp;#160; Because the screen uses Corning’s scratch-resistant &lt;a href="http://www.corninggorillaglass.com/" target="_blank"&gt;Gorilla® Glass&lt;/a&gt;, I can be confident that the phone will withstand the travel pressures that I put on it.&amp;#160; The new &lt;a href="http://www.microsoft.com/surface/" target="_blank"&gt;Surface computer&lt;/a&gt; demonstrated at CES earlier this month also used Gorilla Glass. &lt;/li&gt;    &lt;li&gt;The phone has a solid feel and a professional look.&amp;#160; I’m done with flimsy-feeling plastic phones. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Great job Dell, T-Mobile, and Windows Phone!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10116048" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Synergist/~4/lZWXB6R73Jc" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/synergist/archive/tags/WP7/">WP7</category><feedburner:origLink>http://blogs.msdn.com/b/synergist/archive/2011/01/14/why-i-chose-the-dell-venue-pro.aspx</feedburner:origLink></item><item><title>C# Silverlight Developer Jobs at Inviso in Bellevue, WA</title><link>http://feedproxy.google.com/~r/Synergist/~3/2bDUs0ZPzxQ/c-silverlight-developer-jobs-at-inviso-in-bellevue-wa.aspx</link><pubDate>Tue, 04 Jan 2011 17:22:20 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10111538</guid><dc:creator>Synergist</dc:creator><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/synergist/rsscomments.aspx?WeblogPostID=10111538</wfw:commentRss><comments>http://blogs.msdn.com/b/synergist/archive/2011/01/04/c-silverlight-developer-jobs-at-inviso-in-bellevue-wa.aspx#comments</comments><description>&lt;p&gt;&lt;strong&gt;Subscribe to this &lt;a href="http://feeds.feedburner.com/SilverlightJobs" target="_blank"&gt;Silverlight Jobs Feed&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://invisocorp.com/" target="_blank"&gt;Inviso&lt;/a&gt; builds world class software solutions specializing in business intelligence, web applications, and service oriented solutions.&amp;#160; Inviso works with a steady stream of new Microsoft technologies and prides itself on exceptional service.&amp;#160; &lt;/p&gt;  &lt;p&gt;Inviso is looking for a &lt;b&gt;C# Silverlight Developer&lt;/b&gt; to contract for a short-term project. The candidate can be junior, intermediate or senior in level and the ideal candidate will possess excellent visual and user interface design skills.&amp;#160; The candidate is expected to work with Silverlight, WPF, and XAML to develop a world class line-of-business application.&amp;#160; Preference will be given to candidates who submit code samples.&amp;#160; Communication and team skills are at the top of our list.&amp;#160; A Computer Science, related degree or equivalent experience is a must.&amp;#160; Good patterns and object-oriented design skills are a must for the senior role.&amp;#160; Depending on the individual’s performance and needs of the business, the role might mature into a longer term opportunity.&lt;/p&gt;  &lt;p&gt;You will be expected to either know, or be on the path to knowing the ins and outs of Expression Blend, XAML, Silverlight and WPF.&lt;/p&gt;  &lt;p&gt;You will be involved in the full software development life cycle, including design, development, and maintenance.&lt;/p&gt;  &lt;h1&gt;Responsibilities include:&lt;/h1&gt;  &lt;p&gt;· Working closely with a Project Manager and Analyst to understand the business problem&lt;/p&gt;  &lt;p&gt;· Contributing to functional specifications and design conversations&lt;/p&gt;  &lt;p&gt;· Working with a Solution Architect to get guidance on design patterns required as part of solution&lt;/p&gt;  &lt;p&gt;· Writing and rewriting code so that it not only solves the problem but is clear and maintainable&lt;/p&gt;  &lt;p&gt;· Accommodate client requests that may drift through the duration of the project&lt;/p&gt;  &lt;p&gt;· Understand and negotiate tradeoffs between competing implementations of components or algorithms&lt;/p&gt;  &lt;p&gt;· Work closely with designer to enable design-driven development&lt;/p&gt;  &lt;p&gt;· Work closely with designer to integrate XAML styles and custom controls&lt;/p&gt;  &lt;h1&gt;Job Requirements for Senior C# Silverlight Developer&lt;/h1&gt;  &lt;p&gt;· Computer Science, related degree or equivalent experience is a must&lt;/p&gt;  &lt;p&gt;· Minimum of 5-8 years of experience in industry.&lt;/p&gt;  &lt;p&gt;· Industrial caliber object-oriented design skills&lt;/p&gt;  &lt;p&gt;· Practice and understanding of design patterns&lt;/p&gt;  &lt;p&gt;· Solid team and communication skills&lt;/p&gt;  &lt;p&gt;· Solid technical communication skills: wireframes, ERDs, UML diagrams&lt;/p&gt;  &lt;p&gt;· Experience with enterprise patterns and architectures&lt;/p&gt;  &lt;p&gt;· Command of C#, Silverlight, XAML, XML, WFC, WPF, WF, SQL Server, LINQ&lt;/p&gt;  &lt;h1&gt;Job Requirements for Junior C# Silverlight Developer&lt;/h1&gt;  &lt;p&gt;· Computer Science, related degree or equivalent experience is a must&lt;/p&gt;  &lt;p&gt;· Minimum of 2-4 years of experience in industry.&lt;/p&gt;  &lt;p&gt;· Background in object-oriented design&lt;/p&gt;  &lt;p&gt;· Introduced to design patterns&lt;/p&gt;  &lt;p&gt;· Solid team and communication skills&lt;/p&gt;  &lt;p&gt;· C#, XML, SQL Server, exposure to Silverlight, XAML, or WPF and LINQ&lt;/p&gt;  &lt;p&gt;&lt;b&gt;If you are interested in this position, please email us your resume to &lt;a href="mailto:apply@invisocorp.com"&gt;apply@invisocorp.com&lt;/a&gt;.&amp;#160; Reference SilverLightJobs.&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Subscribe to this &lt;a href="http://feeds.feedburner.com/SilverlightJobs" target="_blank"&gt;Silverlight Jobs Feed&lt;/a&gt;.&lt;/strong&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10111538" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Synergist/~4/2bDUs0ZPzxQ" height="1" width="1"/&gt;</description><category domain="http://blogs.msdn.com/b/synergist/archive/tags/Silverlight+Jobs/">Silverlight Jobs</category><feedburner:origLink>http://blogs.msdn.com/b/synergist/archive/2011/01/04/c-silverlight-developer-jobs-at-inviso-in-bellevue-wa.aspx</feedburner:origLink></item><item><title>Updated SMF Thumbnail Scrubbing Sample Code</title><link>http://feedproxy.google.com/~r/Synergist/~3/EmRKM4OhmjE/updated-smf-thumbnail-scrubbing-sample-code.aspx</link><pubDate>Tue, 28 Dec 2010 18:59:32 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:10109632</guid><dc:creator>Synergist</dc:creator><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.msdn.com/b/synergist/rsscomments.aspx?WeblogPostID=10109632</wfw:commentRss><comments>http://blogs.msdn.com/b/synergist/archive/2010/12/28/updated-smf-thumbnail-scrubbing-sample-code.aspx#comments</comments><description>&lt;p&gt;I just posted an update to the code I wrote almost a year ago for &lt;a href="http://code.msdn.microsoft.com/SMFThumbnailScrub" target="_blank"&gt;showing thumbnail images of a video while scrubbing&lt;/a&gt; (moving the play slider) in Silverlight.&amp;#160; This is similar to the experience that you get when scrubbing on Netflix Watch Instantly with Silverlight.&amp;#160; Here is what I’ve done:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;I updated the code for Silverlight 4.&lt;/li&gt;    &lt;li&gt;I updated the code for the &lt;a href="http://smf.codeplex.com/" target="_blank"&gt;Silverlight Media Framework 2.2&lt;/a&gt; release by making the code a plug-in.&amp;#160; This makes it very easy to integrate the code – all you have to do is add the ThumbnailScrubbing.dll assembly to your project and the SMF Framework takes care of it with the Managed Extensibility Framework (MEF).&lt;/li&gt;    &lt;li&gt;I added a GenerateThumbnails command line tool that uses the Expression Encoder 4 object model to generate the necessary thumbnail images.&lt;/li&gt;    &lt;li&gt;The Thumbnails control is now a custom control that can be styled or skinned.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-83-05-metablogapi/5710.image_5F00_1415F666.png"&gt;&lt;img style="background-image: none; border-bottom: 0px; border-left: 0px; margin: ; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/cfs-file.ashx/__key/CommunityServer-Blogs-Components-WeblogFiles/00-00-00-83-05-metablogapi/5126.image_5F00_thumb_5F00_4337BC30.png" width="822" height="619" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You can &lt;a href="http://code.msdn.microsoft.com/SMFThumbnailScrub" target="_blank"&gt;download the code here&lt;/a&gt; or try out a demo that uses it at &lt;a href="http://xmldocs.net/smf/"&gt;http://xmldocs.net/smf/&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10109632" width="1" height="1"&gt;&lt;img src="http://feeds.feedburner.com/~r/Synergist/~4/EmRKM4OhmjE" height="1" width="1"/&gt;</description><feedburner:origLink>http://blogs.msdn.com/b/synergist/archive/2010/12/28/updated-smf-thumbnail-scrubbing-sample-code.aspx</feedburner:origLink></item></channel></rss>
