<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7304085971491703521</id><updated>2011-09-18T01:32:22.260+02:00</updated><category term='Rx Framework'/><category term='&quot;Quadrant&quot;'/><category term='WCF RIA Services'/><category term='Expression Blend 4 SDK'/><category term='Silverlight 5'/><category term='ASP.NET Dynamic Data'/><category term='Deep Zoom Composer'/><category term='Silverlight 4'/><category term='Expression Blend'/><category term='Silverlight for Mobile'/><category term='Expression Blend 4'/><category term='Silverlight Toolkit'/><category term='WCF Data Services'/><category term='MService'/><category term='Visual Studio 2010'/><category term='&quot;Oslo&quot;'/><category term='ASP.NET MVC'/><category term='MEF'/><category term='3D'/><category term='WCF'/><category term='Expression'/><category term='OData'/><category term='SketchFlow'/><category term='ADO.NET Data Services'/><category term='Expression Blend 3'/><category term='.Net Ria Services'/><category term='Silverlight 3'/><category term='C# 4'/><category term='MUrl'/><category term='Silverlight'/><category term='Expression Blend 3 SDK'/><title type='text'>Windows developer future</title><subtitle type='html'>Future versions of Microsoft technologies and products</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>99</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-4606263291404763785</id><published>2011-05-12T22:37:00.000+02:00</published><updated>2011-05-13T19:02:28.558+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='3D'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 5'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>3D Graphics in Silverlight 5 Beta: links + cool apps !</title><content type='html'>&lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED06"&gt;Graphics &amp;amp; 3D with Silverlight 5&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/KEY02"&gt;MIX11 Day 2 Keynotes&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/Series/Silverlight-Firestarter/Silverlight-Firestarter-2010-Keynote-with-Scott-Guthrie"&gt;Silverlight Firestarter 2010 Keynote with Scott Guthrie&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/gg197424(XNAGameStudio.35).aspx"&gt;3-D Graphics Overview&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/XNA-Math-Helper-DLL-d4d1f7d4"&gt;XNA Math Library&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://aarononeal.info/?p=145"&gt;HLSL Build Task with Visual Studio Integration&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/gg197425(XNAGameStudio.35).aspx"&gt;Walkthrough: Creating and Animating a 3-D Textured Cube in Silverlight&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/silverlight_sdk/archive/2011/04/13/what-s-new-in-silverlight-5-beta-3d-graphics-support.aspx"&gt;What's new in Silverlight 5 beta? 3D graphics support!&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/05/05/silverlight-5-beta-rough-notes-the-third-dimension.aspx"&gt;Silverlight 5 Beta Rough Notes–The Third Dimension&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://johnpapa.net/3dmix11"&gt;Silverlight 5 3D Housebuilder Project Shown at MIX11&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/site/search?f%5B0%5D.Type=Topic&amp;amp;f%5B0%5D.Value=Graphics%20and%203D&amp;amp;f%5B0%5D.Text=Graphics%20and%203D&amp;amp;f%5B1%5D.Type=Technology&amp;amp;f%5B1%5D.Value=Silverlight"&gt;MSDN Code Gallery&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://aarononeal.info/"&gt;Aaron Oneal’s Blog&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/eternalcoding/"&gt;David Catuhe’s Blog&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://sl3dmi.codeplex.com/"&gt;Silverlight 3D Model Importer&lt;/a&gt;&amp;#160; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://babylontoolkit.codeplex.com/"&gt;Babylon Toolkit&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://cid-dbcaf7311f080ba2.office.live.com/self.aspx/Publiczny/SL5/Beta/SL5Beta^_3D.zip"&gt;My first Silverlight 3D app&lt;/a&gt; (based on &lt;a href="http://code.msdn.microsoft.com/Colored-Non-Textured-3D-c0e3cda6"&gt;Color Cube Sample&lt;/a&gt; from &lt;a href="http://code.msdn.microsoft.com/site/search?f%5B0%5D.Type=Topic&amp;amp;f%5B0%5D.Value=Graphics%20and%203D&amp;amp;f%5B0%5D.Text=Graphics%20and%203D&amp;amp;f%5B1%5D.Type=Technology&amp;amp;f%5B1%5D.Value=Silverlight"&gt;MSDN gallery&lt;/a&gt;):&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Tc1iy_8ysKI/AAAAAAAAA3c/ooFci9Pk0I0/s1600-h/01_Przechwytywanie4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_Przechwytywanie" border="0" alt="01_Przechwytywanie" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Tc1izbqHJXI/AAAAAAAAA3g/RbACaCMWX7Q/01_Przechwytywanie_thumb2.png?imgmax=800" width="640" height="400" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Interesting samples (very cool!):&lt;/p&gt;  &lt;p&gt;&lt;a href="http://code.msdn.microsoft.com/Babylon-3D-engine-f0404ace"&gt;Babylon 3D Engine&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Tc1i0OzQxAI/AAAAAAAAA3k/t2AQJeBE6gw/s1600-h/03_Przechwytywanie4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="03_Przechwytywanie" border="0" alt="03_Przechwytywanie" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Tc1i1LU8fsI/AAAAAAAAA3o/mRWbq-iWw7A/03_Przechwytywanie_thumb2.png?imgmax=800" width="640" height="401" /&gt;&lt;/a&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/Tc1i1gWUK0I/AAAAAAAAA3s/Vg8CjE2ps0Y/s1600-h/04_Przechwytywanie4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="04_Przechwytywanie" border="0" alt="04_Przechwytywanie" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Tc1i2eno9uI/AAAAAAAAA3w/P4tG3h5tYuE/04_Przechwytywanie_thumb2.png?imgmax=800" width="640" height="401" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://code.msdn.microsoft.com/3D-Housebuilder-demo-from-def4af04"&gt;3D Housebuilder&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Tc1i3EqE2eI/AAAAAAAAA30/SJ2lmq41RUw/s1600-h/20_Przechwytywanie4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="20_Przechwytywanie" border="0" alt="20_Przechwytywanie" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Tc1i3uTrx3I/AAAAAAAAA34/CWGwxG5tDfo/20_Przechwytywanie_thumb2.png?imgmax=800" width="640" height="401" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://code.msdn.microsoft.com/Solar-Wind-3D-Sample-4cb56170"&gt;Solar Wind 3D Sample &lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/Tc1i4PqGibI/AAAAAAAAA38/l74y9gYjamg/s1600-h/17_Przechwytywanie7.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="17_Przechwytywanie" border="0" alt="17_Przechwytywanie" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Tc1i46eKu6I/AAAAAAAAA4A/Bjlg9xk2HJI/17_Przechwytywanie_thumb3.png?imgmax=800" width="640" height="401" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;a href="http://www.simonferquel.net/blog/sl3dmi/lizard.html"&gt;A bump mapped Lizard&lt;/a&gt; &amp;amp; &lt;a href="http://www.simonferquel.net/blog/sl3dmi/tank.html"&gt;An animated Tank&lt;/a&gt; (from &lt;a href="http://sl3dmi.codeplex.com/"&gt;Silverlight 3D Model Importer&lt;/a&gt;)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Tc1i5axaN7I/AAAAAAAAA4E/NRkkUDTLgUE/s1600-h/18_Przechwytywanie4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="18_Przechwytywanie" border="0" alt="18_Przechwytywanie" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Tc1i6F1v8jI/AAAAAAAAA4I/-KsIvDULjZg/18_Przechwytywanie_thumb2.png?imgmax=800" width="640" height="401" /&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Tc1i6daKHJI/AAAAAAAAA4M/sVXCV0rWV3E/s1600-h/19_Przechwytywanie4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="19_Przechwytywanie" border="0" alt="19_Przechwytywanie" src="http://lh4.ggpht.com/_D_LHhy5fi8o/Tc1i64pLmvI/AAAAAAAAA4Q/B1XMdSrcudU/19_Przechwytywanie_thumb2.png?imgmax=800" width="640" height="401" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I will blog more details about SL5 3D graphics in the upcoming months.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-4606263291404763785?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/4606263291404763785/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=4606263291404763785' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4606263291404763785'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4606263291404763785'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2011/05/3d-graphics-in-silverlight-5-beta-links.html' title='3D Graphics in Silverlight 5 Beta: links + cool apps !'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/Tc1izbqHJXI/AAAAAAAAA3g/RbACaCMWX7Q/s72-c/01_Przechwytywanie_thumb2.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-4675318408853727343</id><published>2011-05-08T12:57:00.000+02:00</published><updated>2011-05-08T15:51:39.015+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 5'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>Reactivation!!! New features in Silverlight 5 Beta + Links + Samples - Part I</title><content type='html'>&lt;p&gt;I’ve reactivated this blog! I always love new technologies, especially CTPs and Betas!&lt;/p&gt; &lt;p&gt;What’s new in Silverlight 5?&amp;nbsp; Here’s my summary of the features already announced for it.&amp;nbsp; &lt;font color="#ff0000"&gt;Silverlight 5 Beta features are colored red&lt;/font&gt;. I have made some demos. In addition, I have included some interesting samples I had found on the Web. &lt;/p&gt; &lt;h1&gt;Intro&lt;/h1&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.microsoft.com/silverlight/future/"&gt;The Future of Microsoft Silverlight&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.silverlight.net/getstarted/silverlight-5-beta/"&gt;Get Started: Silverlight 5 Beta&lt;/a&gt;  &lt;li&gt;&lt;a href="http://go.microsoft.com/fwlink/?LinkId=214343"&gt;Silverlight 5 Features Document&lt;/a&gt;  &lt;li&gt;&lt;a href="http://team.silverlight.net/announcement/silverlight-5-beta-ndash-available-now/"&gt;Silverlight 5 Beta – available now!&lt;/a&gt;  &lt;li&gt;&lt;a href="http://timheuer.com/blog/archive/2011/04/13/whats-new-in-silverlight-5-a-guide.aspx"&gt;Silverlight 5 Beta–A guide to the new features&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.ningzhang.org/2011/04/14/silverlight-5-beta-development-tools/"&gt;Silverlight 5 Beta Development Tools&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.silverlight.net/learn/videos/all/whats-new-in-silverlight-5-beta/"&gt;What's New in Silverlight 5 Beta (Pete Brown)&lt;/a&gt;  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/gg986857(VS.96).aspx"&gt;What's New in Silverlight 5 Beta (msdn)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h1&gt;Data binding&lt;/h1&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/cc278072(VS.96).aspx"&gt;Data Binding&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Implicit Data Templates&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED10"&gt;Building In Browser Experiences with Silverlight 5&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.silverlight.net/learn/videos/all/implicit-data-templates-in-silverlight-5-beta/"&gt;Implicit Data Templates in Silverlight 5 Beta&lt;/a&gt;  &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/04/26/silverlight-5-beta-rough-notes-implicit-data-templates.aspx"&gt;Silverlight 5 Beta Rough Notes–Implicit Data Templates&lt;/a&gt;  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.datatemplate.datatype(VS.96).aspx"&gt;DataTemplate.DataType&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;RelativeSouce Ancestor Bindings&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED10"&gt;Building In Browser Experiences with Silverlight 5&lt;/a&gt;  &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/04/26/silverlight-5-beta-rough-notes-ancestor-relative-binding.aspx"&gt;Silverlight 5 Beta Rough Notes–Ancestor Relative Binding&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/Series/Silverlight-Firestarter/Silverlight-Firestarter-2010-Keynote-with-Scott-Guthrie"&gt;Silverlight Firestarter 2010 Keynote with Scott Guthrie&lt;/a&gt;  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.data.binding.relativesource(VS.96).aspx"&gt;Binding.RelativeSource&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Binding In Style Setters&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED10"&gt;Building In Browser Experiences with Silverlight 5&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/Series/Silverlight-Firestarter/Silverlight-Firestarter-2010-Keynote-with-Scott-Guthrie"&gt;Silverlight Firestarter 2010 Keynote with Scott Guthrie&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Binding to Dynamic Properties&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/silverlight_sdk/archive/2011/04/26/binding-to-dynamic-properties-with-icustomtypeprovider-silverlight-5-beta.aspx"&gt;Binding to Dynamic Properties with ICustomTypeProvider&lt;/a&gt;  &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/04/26/silverlight-5-beta-binding-to-dynamic-properties.aspx"&gt;Silverlight 5 Beta–Binding to Dynamic Properties&lt;/a&gt;  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.reflection.icustomtypeprovider(VS.96).aspx"&gt;ICustomTypeProvider&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Databinding Debugging&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED10"&gt;Building In Browser Experiences with Silverlight 5&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.silverlight.net/learn/videos/all/silverlight-5-beta-debugging-binding/"&gt;Silverlight 5 Beta Debugging Binding&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/Series/Silverlight-Firestarter/Silverlight-Firestarter-2010-Keynote-with-Scott-Guthrie"&gt;Silverlight Firestarter 2010 Keynote with Scott Guthrie&lt;/a&gt;  &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/04/28/silverlight-5-beta-rough-notes-debugging-data-binding.aspx"&gt;Silverlight 5 Beta Rough Notes–Debugging Data-Binding&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;DataContextChanged Event&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED10"&gt;Building In Browser Experiences with Silverlight 5&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;UpdateSourceTrigger: PropertyChanged&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED10"&gt;Building In Browser Experiences with Silverlight 5&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/SL5/Beta/SL5Beta^_Binding.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;h1&gt;XAML&lt;/h1&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Custom Markup Extensions&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED10"&gt;Building In Browser Experiences with Silverlight 5&lt;/a&gt;  &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/04/26/silverlight-5-beta-rough-notes-markup-extensions.aspx"&gt;Silverlight 5 Beta Rough Notes–Markup Extensions&lt;/a&gt;&amp;nbsp; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Series/Silverlight-Firestarter/Silverlight-Firestarter-2010-Keynote-with-Scott-Guthrie"&gt;Silverlight Firestarter 2010 Keynote with Scott Guthrie&lt;/a&gt;  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.markup.markupextension(VS.96).aspx"&gt;MarkupExtension&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;CornerRadius, Thickness, Size, and Rect - attribute syntax on properties&lt;/font&gt;&lt;/h4&gt; &lt;p&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/SL5/Beta/SL5Beta^_Xaml.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;h1&gt;Layout&lt;/h1&gt; &lt;h4&gt;Inter-layout transitions&lt;/h4&gt; &lt;h4&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Series/Silverlight-Firestarter/Silverlight-Firestarter-2010-Keynote-with-Scott-Guthrie"&gt;Silverlight Firestarter 2010 Keynote with Scott Guthrie&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h1&gt;Input&lt;/h1&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;ClickCount&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.silverlight.net/learn/videos/all/silverlight-5-mouse-button-double-and-multi-click/"&gt;Silverlight 5 Mouse Button Double and Multi Click&lt;/a&gt; &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/cc189029(VS.96).aspx"&gt;Mouse Support&lt;/a&gt;&amp;nbsp; &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.input.mousebuttoneventargs.clickcount(VS.96).aspx"&gt;ClickCount&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;ItemsControl Search&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://pitorque.de/MisterGoodcat/post/Silverlight-5-Tidbits-Incremental-Search.aspx"&gt;Silverlight 5 Tidbits–Incremental Search&lt;/a&gt;  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.textsearch.textpath(VS.96).aspx"&gt;TextPath&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/SL5/Beta/SL5Beta^_Input.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;h1&gt;Text&lt;/h1&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;RichTextBoxOverflow&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED10"&gt;Building In Browser Experiences with Silverlight 5&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.silverlight.net/learn/videos/all/silverlight-5-multi-column-linked-text/"&gt;Silverlight 5 Multi-Column and Linked Text&lt;/a&gt;  &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/04/27/silverlight-5-beta-rough-notes-linked-richtextboxes.aspx"&gt;Silverlight 5 Beta Rough Notes–Linked RichTextBoxes&lt;/a&gt;  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.richtextboxoverflow(VS.96).aspx"&gt;RichTextBoxOverflow&lt;/a&gt;  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.richtextbox(VS.96).aspx"&gt;RichTextBox&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Tcad1xEbuGI/AAAAAAAAA1M/Z83mPMssjLM/s1600-h/OverflowCopy4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Overflow - Copy" border="0" alt="Overflow - Copy" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TcaeBkc0tJI/AAAAAAAAA1Q/EqCPHhgPok4/OverflowCopy_thumb2.png?imgmax=800" width="640" height="401"&gt;&lt;/a&gt; &lt;/p&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Tracking &amp;amp; leading&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.control.characterspacing(VS.96).aspx"&gt;CharacterSpacing&lt;/a&gt; (&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.control(VS.96).aspx"&gt;Control&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.textblock(VS.96).aspx"&gt;TextBlock&lt;/a&gt;, and &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.documents.textelement(VS.96).aspx"&gt;TextElement&lt;/a&gt;)  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.documents.block.lineheight(VS.96).aspx"&gt;LineHeight&lt;/a&gt; &amp;amp; &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.documents.block.linestackingstrategy(VS.96).aspx"&gt;LineStackingStrategy&lt;/a&gt; ( &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.documents.block(VS.96).aspx"&gt;Block&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.textblock(VS.96).aspx"&gt;TextBlock&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.textbox(VS.96).aspx"&gt;TextBox&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.richtextbox(VS.96).aspx"&gt;RichTextBox&lt;/a&gt;)&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TcaeFuG-yZI/AAAAAAAAA1U/Bo67X_IlWTE/s1600-h/text_characterspacing_tracking_leadi%5B1%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="text_characterspacing_tracking_leading" border="0" alt="text_characterspacing_tracking_leading" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TcaeJ6bAiXI/AAAAAAAAA1Y/Gmbyu8Pj-XY/text_characterspacing_tracking_leadi.png?imgmax=800" width="640" height="459"&gt;&lt;/a&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TcaeMfxA0yI/AAAAAAAAA1c/Mj3zsfqUrGg/s1600-h/text_lineheight4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="text_lineheight" border="0" alt="text_lineheight" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TcaePQpSdQI/AAAAAAAAA1g/Yzx4eCJh_E0/text_lineheight_thumb2.png?imgmax=800" width="640" height="174"&gt;&lt;/a&gt; &lt;/p&gt; &lt;h4&gt;Text Clarity&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED10"&gt;Building In Browser Experiences with Silverlight 5&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;Full OpenType Support&lt;/h4&gt; &lt;p&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/SL5/Beta/SL5Beta^_Text.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;h1&gt;Printing&lt;/h1&gt; &lt;h4&gt;Vector PostScript Printing&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED10"&gt;Building In Browser Experiences with Silverlight 5&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h1&gt;Media&lt;/h1&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Low-latency audio (SoundEffect API)&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.silverlight.net/learn/videos/all/silverlight-5-low-latency-sound-effects/"&gt;Silverlight 5 Low-Latency Sound Effects&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TcaeSuckiMI/AAAAAAAAA1k/8J3wzXEGtcA/s1600-h/SoundEffect_TrickPlay9.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SoundEffect_TrickPlay" border="0" alt="SoundEffect_TrickPlay" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TcaeWn_sx-I/AAAAAAAAA1o/tv--WrxNx9I/SoundEffect_TrickPlay_thumb5.png?imgmax=800" width="640" height="211"&gt;&lt;/a&gt; &lt;/p&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;TrickPlay*&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED10"&gt;Building In Browser Experiences with Silverlight 5&lt;/a&gt;  &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/05/03/silverlight-5-beta-rough-notes-trick-play-video.aspx"&gt;Silverlight 5 Beta Rough Notes–Trick Play Video&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;*video-only for the Beta&lt;/p&gt; &lt;h4&gt;Improved power awareness&lt;/h4&gt; &lt;h4&gt;Remote-control support&lt;/h4&gt; &lt;h4&gt;Seamless switching between DRM media sources&lt;/h4&gt; &lt;p&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/SL5/Beta/SL5Beta^_Media.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;h1&gt;Trusted apps&lt;/h1&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ee721083(VS.96).aspx"&gt;Trusted Applications&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h1&gt;&lt;font size="5"&gt;in-browser*&lt;/font&gt;&lt;/h1&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED12"&gt;Advanced Features in Silverlight 5&lt;/a&gt;  &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/04/27/silverlight-5-beta-rough-notes-trusted-apps-in-the-browser.aspx"&gt;Silverlight 5 Beta Rough Notes–Trusted Apps In The Browser&lt;/a&gt;&amp;nbsp; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Series/Silverlight-Firestarter/Silverlight-Firestarter-2010-Keynote-with-Scott-Guthrie"&gt;Silverlight Firestarter 2010 Keynote with Scott Guthrie&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;*Windows-only for the Beta&lt;/p&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Enterprise Group Policy Support&lt;/font&gt;&lt;/h4&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Hosting HTML content (and &lt;font color="#ff0000"&gt;NotificationWindow &lt;/font&gt;?)&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.webbrowser(VS.96).aspx"&gt;WebBrowser&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TcaeaNygZRI/AAAAAAAAA1s/M3-Icu-_h6c/s1600-h/Trusted_1_NotElevatedCopy4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Trusted_1_NotElevated - Copy" border="0" alt="Trusted_1_NotElevated - Copy" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TcaedmItsRI/AAAAAAAAA1w/y77KAfzAAKo/Trusted_1_NotElevatedCopy_thumb2.png?imgmax=800" width="640" height="448"&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Tcaem537zQI/AAAAAAAAA10/SEWWyW-gwGE/s1600-h/Trusted_1_Elevated3Copy7.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Trusted_1_Elevated3 - Copy" border="0" alt="Trusted_1_Elevated3 - Copy" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TcaexsiyQTI/AAAAAAAAA14/Tw5MMD16mTE/Trusted_1_Elevated3Copy_thumb5.png?imgmax=800" width="640" height="513"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Tcae3mmlWaI/AAAAAAAAA18/gYxU1vkojiI/s1600-h/PuzzleCopy4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Puzzle - Copy" border="0" alt="Puzzle - Copy" src="http://lh4.ggpht.com/_D_LHhy5fi8o/Tcae-KlNz0I/AAAAAAAAA2A/4ofrm8QcRYM/PuzzleCopy_thumb2.png?imgmax=800" width="640" height="444"&gt;&lt;/a&gt; &lt;/h4&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Unrestricted File Access&lt;/font&gt;&lt;/h4&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TcafGpf_bhI/AAAAAAAAA2E/BHKm0ysNXMo/s1600-h/Trusted_2Copy4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Trusted_2 - Copy" border="0" alt="Trusted_2 - Copy" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TcafPZSYvnI/AAAAAAAAA2I/OyxHYH31N8o/Trusted_2Copy_thumb2.png?imgmax=800" width="640" height="387"&gt;&lt;/a&gt; &lt;/p&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Full keyboard access in full-screen&lt;/font&gt;&lt;/h4&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;…&lt;/font&gt;&lt;/h4&gt; &lt;h4&gt;COM&lt;/h4&gt; &lt;h4&gt;P/Invoke&lt;/h4&gt; &lt;h1&gt;&lt;font size="5"&gt;out of browser&lt;/font&gt;&lt;/h1&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED12"&gt;Advanced Features in Silverlight 5&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/Series/Silverlight-Firestarter/Silverlight-Firestarter-2010-Keynote-with-Scott-Guthrie"&gt;Silverlight Firestarter 2010 Keynote with Scott Guthrie&lt;/a&gt;  &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.window(VS.96).aspx"&gt;Window&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Unrestricted File Access&lt;/font&gt;&lt;/h4&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Multiple Native Windows&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.silverlight.net/learn/videos/all/silverlight-5-native-operating-system/"&gt;Silverlight 5 Native Windows&lt;/a&gt;  &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/04/18/silverlight-5-beta-rough-notes-multiple-window-support.aspx"&gt;Silverlight 5 Beta Rough Notes–Multiple Window Support&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TcafZBWSc0I/AAAAAAAAA2M/Dtn78GjxRxI/s1600-h/MultipleWindows7.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MultipleWindows" border="0" alt="MultipleWindows" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TcafkpDgGBI/AAAAAAAAA2Q/yMdrhhuzgW8/MultipleWindows_thumb5.png?imgmax=800" width="640" height="512"&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TcafumWrQMI/AAAAAAAAA2U/nnAmXncucoY/s1600-h/MultipleWindowsChrome5.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MultipleWindowsChrome" border="0" alt="MultipleWindowsChrome" src="http://lh4.ggpht.com/_D_LHhy5fi8o/Tcaf59tS7DI/AAAAAAAAA2Y/DoS9t4xqOzY/MultipleWindowsChrome_thumb3.png?imgmax=800" width="640" height="512"&gt;&lt;/a&gt; &lt;/p&gt; &lt;h4&gt;Main Window Improvements&lt;/h4&gt; &lt;h4&gt;P/Invoke&lt;/h4&gt; &lt;p&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/SL5/Beta/SL5Beta^_Trusted.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;h1&gt;Network communication&lt;/h1&gt; &lt;h4&gt;WS-Trust: message security - encrypted at the WCF level, SAML authentication token&lt;/h4&gt; &lt;h1&gt;PivotViewer&lt;/h1&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED12"&gt;Advanced Features in Silverlight 5&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/Series/Silverlight-Firestarter/Silverlight-Firestarter-2010-Keynote-with-Scott-Guthrie"&gt;Silverlight Firestarter 2010 Keynote with Scott Guthrie&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h1&gt;3D Graphics&lt;/h1&gt; &lt;p&gt;&lt;font color="#ff0000" size="5"&gt;&lt;strong&gt;I’ll write next post about 3D !&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;XNA graphics API (3D, 2D)&lt;/font&gt;&lt;/h4&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;DrawingSurface control&lt;/font&gt;&lt;/h4&gt; &lt;h4&gt;XNA Effects&lt;/h4&gt; &lt;h4&gt;XNA Math Library&lt;/h4&gt; &lt;h1&gt;Others&lt;/h1&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Default filename in SaveFileDialog&lt;/font&gt;&lt;/h4&gt; &lt;p&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/SL5/Beta/SL5Beta^_Others.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;h1&gt;Performance&lt;/h1&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Improved startup performance (multi‐core background JIT support)&lt;/font&gt;&lt;/h4&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;XAML Parser performance optimizations(ResourceDictionaries, UserControls)&lt;/font&gt;&lt;/h4&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Improved Graphics stack - Independent Animations&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/04/27/silverlight-5-beta-rough-notes-composition-thread.aspx"&gt;Silverlight 5 Beta Rough Notes–Composition Thread?&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Improved Text Layout performance&lt;/font&gt;&lt;/h4&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Hardware Decoding H.264&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/05/03/silverlight-5-beta-rough-notes-hardware-decoded-h-264.aspx"&gt;Silverlight 5 Beta Rough Notes–Hardware Decoded H.264&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Network Latency optimizations&lt;/font&gt;&lt;/h4&gt; &lt;h4&gt;&lt;font color="#ff0000"&gt;Hardware acceleration in windowless mode with Internet Explorer 9&lt;/font&gt;&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2011/04/26/silverlight-5-beta-rough-notes-silverlight-and-ie9-in-windowless-mode.aspx"&gt;Silverlight 5 Beta Rough Notes–Silverlight and IE9 in Windowless Mode&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;64-bit&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED12"&gt;Advanced Features in Silverlight 5&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h1&gt;Tools&lt;/h1&gt; &lt;h4&gt;Automated UI Testing&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Series/Silverlight-Firestarter/Silverlight-Firestarter-2010-Keynote-with-Scott-Guthrie"&gt;Silverlight Firestarter 2010 Keynote with Scott Guthrie&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;h4&gt;Profiling Support&lt;/h4&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/Events/MIX/MIX11/MED07"&gt;Tips for Improving Performance in Applications Built with Silverlight&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;In the nearest future I’ll write post about cool 3D graphics.&lt;/p&gt; &lt;p&gt;Cheers!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-4675318408853727343?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/4675318408853727343/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=4675318408853727343' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4675318408853727343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4675318408853727343'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2011/05/reactivation-new-features-in.html' title='Reactivation!!! New features in Silverlight 5 Beta + Links + Samples - Part I'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/TcaeBkc0tJI/AAAAAAAAA1Q/EqCPHhgPok4/s72-c/OverflowCopy_thumb2.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-9173389823698451768</id><published>2010-08-05T23:42:00.000+02:00</published><updated>2010-08-06T05:09:42.637+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF RIA Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>WCF RIA SERVICES v1.0 - Extra Cool Samples !</title><content type='html'>&lt;p&gt;Today I’ll write about very interesting scenarios with WCF RIA Services. Read this post!&lt;/p&gt; &lt;h4&gt;I. NHibernate&lt;/h4&gt; &lt;p&gt;You can quite easily use NHibernate as your DAL. Look at the latest &lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=4316"&gt;NHibernate Sample&lt;/a&gt; from &lt;a href="http://code.msdn.microsoft.com/RiaServices"&gt;WCF RIA Services Code Gallery&lt;/a&gt; with related entities! I have made a simpler example without associations (look below).&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TFt5gKaT1eI/AAAAAAAAAx0/zbcpJ-1SyP8/s1600-h/01_NHibernate_01%5B4%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_NHibernate_01" border="0" alt="01_NHibernate_01" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFt5mzLQOzI/AAAAAAAAAx4/yhDbGXEJtD0/01_NHibernate_01_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TFt5swq6uJI/AAAAAAAAAx8/wlI-3DqJs98/s1600-h/01_NHibernate_02%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_NHibernate_02" border="0" alt="01_NHibernate_02" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt5zBfKEwI/AAAAAAAAAyA/z0k39IcdZtY/01_NHibernate_02_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt55Qy9z7I/AAAAAAAAAyE/ubA0UtbOphw/s1600-h/01_NHibernate_03%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_NHibernate_03" border="0" alt="01_NHibernate_03" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFt6AMkHZCI/AAAAAAAAAyI/FB36L14Xs9c/01_NHibernate_03_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TFt6GT4mtEI/AAAAAAAAAyM/8ayvwgtHG1Q/s1600-h/01_NHibernate_04%5B7%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_NHibernate_04" border="0" alt="01_NHibernate_04" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TFt6M9TNeRI/AAAAAAAAAyQ/aDIejj2HZq0/01_NHibernate_04_thumb%5B3%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TFt6TI1J7VI/AAAAAAAAAyU/gW8baSVWg6Y/s1600-h/01_NHibernate_05%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_NHibernate_05" border="0" alt="01_NHibernate_05" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFt6ZUoWCvI/AAAAAAAAAyY/2ttiHdykfPE/01_NHibernate_05_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h4&gt;II. MVVM&lt;/h4&gt; &lt;p align="left"&gt;Nikhil Kothari at MIX 10’ has shown &lt;a href="http://www.nikhilk.net/RIA-Services-MIX10-Slides-Code.aspx"&gt;how to use WCF RIA Services with MVVM pattern&lt;/a&gt; (domain context as a member of view model). Deepesh Mohnani at TechEd 2010 has presented a great &lt;a href="http://www.msteched.com/2010/NorthAmerica/WEB307"&gt;WCF RIA Services application with MVVM&lt;/a&gt; (for lazy developers: view model inherited from Entity).&amp;nbsp; &lt;/p&gt; &lt;h4&gt;III. Lookups (ComboBoxDataSource)&lt;/h4&gt; &lt;p align="left"&gt;Kyle McClellan from WCF RIA Services team has added to code gallery &lt;a href="http://code.msdn.microsoft.com/Release/ProjectReleases.aspx?ProjectName=RiaServices&amp;amp;ReleaseId=4521"&gt;a cool example with an extension to support lookups - ComboBoxDataSource&lt;/a&gt;. He has implemented cascading ComboBoxes scenario (lookup data sources with parameters like DomainDataSource filters). You can also see how to use lookups for Entity associations. Read about details of the solution &lt;a href="http://blogs.msdn.com/b/kylemc/archive/2010/06/18/combobox-sample-for-ria-services.aspx"&gt;here&lt;/a&gt; and &lt;a href="http://jeffhandley.com/archive/2010/06/22/DomainDataSource-ComboBox.aspx"&gt;here&lt;/a&gt;. &lt;/p&gt; &lt;p align="left"&gt;I have built a simpler example with one ComboBox for Entity association (look below). &lt;/p&gt; &lt;p align="left"&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt6gIWm7-I/AAAAAAAAAyg/RywH1aBsrpg/s1600-h/02_Lookup_01%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="02_Lookup_01" border="0" alt="02_Lookup_01" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TFt6nSUwMPI/AAAAAAAAAyk/FBNyTYbBWmo/02_Lookup_01_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TFt6van-I1I/AAAAAAAAAyo/mFgblXoGaG4/s1600-h/02_Lookup_03%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="02_Lookup_03" border="0" alt="02_Lookup_03" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TFt63FDU39I/AAAAAAAAAys/tKpE89TZZy0/02_Lookup_03_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TFt68miKjZI/AAAAAAAAAyw/yyBWiXeBeN0/s1600-h/02_Lookup_04%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="02_Lookup_04" border="0" alt="02_Lookup_04" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFt7CBFD3BI/AAAAAAAAAy0/IQjQPrb0D0g/02_Lookup_04_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h4&gt;IV. T4&lt;/h4&gt; &lt;p&gt;Early versions of &lt;a href="http://riaservicescontrib.codeplex.com/"&gt;WCF RIA Services Contrib&lt;/a&gt; had contained T4 templates for generating domain services and metadata classes (replacement WCF RIA Services wizard). Now T4 templates have been made obsolete - WCF RIA Services V2 itself is &lt;a href="http://dotnet.uservoice.com/forums/57026-wcf-ria-services"&gt;supposed to start using T4 templates&lt;/a&gt;!&amp;nbsp; &lt;/p&gt; &lt;h4&gt;V. Fluent metadata !&lt;/h4&gt; &lt;p&gt;The standard approach of defining WCF RIA Services entity metadata is based on attributes. But some developers don't like attributes and ask for a fluent interface instead. Nikhil Kothari has created &lt;a href="http://www.nikhilk.net/RIA-Services-Fluent-Metadata-API.aspx"&gt;Fluent API for .NET RIA Services Metadata&lt;/a&gt; for July 09’ version. LINQ expressions are mapped to WCF RIA Services. attributes. You can also define your own custom rules (mapped as standard &lt;em&gt;CustomValidation&lt;/em&gt; attributte). Nikhil will add these extensions to &lt;a href="http://riaservices.codeplex.com/"&gt;RIA Services Essentials&lt;/a&gt; at &lt;a href="http://www.codeplex.com/"&gt;codeplex&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;Some people and I have migrated these extensions to work with WCF RIA Services V1. I have made example application with fluent metadata (look below).&lt;/p&gt; &lt;p align="center"&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TFt7I4YxFnI/AAAAAAAAAy4/1q42VG1Ys54/s1600-h/03_FluentMetadata_02%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="03_FluentMetadata_02" border="0" alt="03_FluentMetadata_02" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt7P68bdwI/AAAAAAAAAy8/X8vLcGm1ZbQ/03_FluentMetadata_02_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt7WmxAOeI/AAAAAAAAAzA/uYESJSp9QXk/s1600-h/03_FluentMetadata_03%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="03_FluentMetadata_03" border="0" alt="03_FluentMetadata_03" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt7dvfMnCI/AAAAAAAAAzE/qBUJ9FGWw1Y/03_FluentMetadata_03_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TFt7jEvclxI/AAAAAAAAAzI/ahDDmztGhvc/s1600-h/03_FluentMetadata_01%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="03_FluentMetadata_01" border="0" alt="03_FluentMetadata_01" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TFt7pwPJntI/AAAAAAAAAzM/eKmzUKTlG4I/03_FluentMetadata_01_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;h4&gt;VI. Offline&lt;/h4&gt; &lt;p align="left"&gt;Nikhil Kothari at TechEd 09’ South Africa has presented &lt;a href="http://www.nikhilk.net/TechEd09-South-Africa-Samples.aspx"&gt;an offline synchronization example&lt;/a&gt; (he’ll plan to public update for it). &lt;/p&gt; &lt;p align="left"&gt;WCF RIA Services &lt;em&gt;DomainContext&lt;/em&gt; is good for offline scenario. &lt;a href="http://riaservicescontrib.codeplex.com/"&gt;WCF RIA Services Contrib&lt;/a&gt; contains an extension to serialize it to Isolated Storage and deserialize from.&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/p&gt; &lt;p align="left"&gt;I have tried to migrate Nikhil Kothari’s solution to work with WCF RIA services V1 and it … works! I have built simple application using this mechanism (look below).&lt;/p&gt; &lt;p align="center"&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt7wOnK61I/AAAAAAAAAzQ/bQ3dfhwCTH8/s1600-h/04_Offline_01%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="04_Offline_01" border="0" alt="04_Offline_01" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt73G_OzkI/AAAAAAAAAzU/zkseWvfRLwc/04_Offline_01_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt7_9kTnRI/AAAAAAAAAzY/TlaSyV-7F_Q/s1600-h/04_Offline_02%5B7%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="04_Offline_02" border="0" alt="04_Offline_02" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TFt8JADZdOI/AAAAAAAAAzc/vWX-9_AwOvQ/04_Offline_02_thumb%5B3%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt8SLmKeiI/AAAAAAAAAzg/ht48Flv4QqA/s1600-h/04_Offline_03%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="04_Offline_03" border="0" alt="04_Offline_03" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFt8bMRXaQI/AAAAAAAAAzk/K6xrbIVO2eU/04_Offline_03_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt8jvNE-gI/AAAAAAAAAzo/8YoZZReESxY/s1600-h/04_Offline_05%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="04_Offline_05" border="0" alt="04_Offline_05" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFt8r8qoi_I/AAAAAAAAAzs/yaoS4bc3wWw/04_Offline_05_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TFt8z4su4EI/AAAAAAAAAzw/vxRjfj2UD3s/s1600-h/04_Offline_06%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="04_Offline_06" border="0" alt="04_Offline_06" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFt883WPMbI/AAAAAAAAAz0/vOSAXzG_VeY/04_Offline_06_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p align="left"&gt;You can download my examples (NHibernate, Lookup, Fluent metadata, Offline) here:&lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_SERVICES^_V1/WCF^_RIA^_Services^_V1.0^_Suplement.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-9173389823698451768?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/9173389823698451768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=9173389823698451768' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/9173389823698451768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/9173389823698451768'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/08/wcf-ria-services-v10-extra-cool-samples.html' title='WCF RIA SERVICES v1.0 - Extra Cool Samples !'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_D_LHhy5fi8o/TFt5mzLQOzI/AAAAAAAAAx4/yhDbGXEJtD0/s72-c/01_NHibernate_01_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-786833294974972002</id><published>2010-08-02T21:58:00.000+02:00</published><updated>2010-08-03T00:50:07.106+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF RIA Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>WCF RIA SERVICES v1.0 Samples - part II</title><content type='html'>&lt;p&gt;I showed &lt;a href="http://martinkruszynski.blogspot.com/2010/07/wcf-ria-services-v10-samples-part-i.html"&gt;part I of my WCF RIA Services v1.0 samples&lt;/a&gt; a&amp;nbsp; few days ago. Today I’ll continue this topic.  &lt;p&gt;I sign changes in my samples:&amp;nbsp;&amp;nbsp; &lt;ul&gt; &lt;li&gt;&lt;font color="#ff0000"&gt;migration changes &amp;amp; new features&lt;/font&gt;  &lt;li&gt;&lt;font color="#ff8000"&gt;migration changes&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Let’s continue …  &lt;p&gt;&lt;font color="#ff8000"&gt;08. RelatedEntitiesDemo&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font color="#ff8000"&gt;09. CompositionExample&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font color="#ff0000"&gt;10. InheritanceExample&lt;/font&gt;&lt;/p&gt; &lt;p&gt;The workaround for EF described &lt;a href="http://systemmetaphor.blogspot.com/2010/02/wcf-ria-services-advanced-topics-fully.html"&gt;here&lt;/a&gt; no longer needed. I have added modifying entities to my sample application. &lt;/p&gt; &lt;p&gt;&lt;font color="#ff8000"&gt;11. PresentationModelDemo&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font color="#ff8000"&gt;12. WcfDemo&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;em&gt;WpfClientApp&lt;/em&gt; (and SOAP communication) moved to new &lt;em&gt;EndpointsDemo&lt;/em&gt; example.&lt;/p&gt; &lt;p&gt;&lt;font color="#ff0000"&gt;13. EndpointsDemo&lt;/font&gt;&lt;/p&gt; &lt;p&gt;By default, only the Binary endpoint is enabled for domain services without additional configuration. You can easily enable another endpoint (ODATA, SOAP, JSON or custom) by registering an endpoint factory in the &lt;em&gt;Web.config&lt;/em&gt; file as shown below. &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TFdKRa2v1GI/AAAAAAAAAxU/lgswfF3YM6s/s1600-h/01_Endpoints_01%20-%20mod%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_Endpoints_01 - mod" border="0" alt="01_Endpoints_01 - mod" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFdKZJJycQI/AAAAAAAAAxY/UOzYbrKYGmA/01_Endpoints_01%20-%20mod_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The ODATA endpoint has very limited support in V1. There is no Update or LINQ query support. Deepesh Mohnani has &lt;a href="http://blogs.msdn.com/b/deepm/archive/2010/05/14/silverlight-tv-episode-26-exposing-soap-json-and-odata-endpoints-from-ria-services.aspx"&gt;a great post about WCF RIA Services endpoints&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Clients in my example: &lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;em&gt;BusinessApplicationDemo&lt;/em&gt; (Silverlight, default endpoint)&lt;/li&gt; &lt;li&gt;&lt;em&gt;BusinessApplicationDemo.Web&lt;/em&gt; (AJAX, JSON)&lt;/li&gt; &lt;li&gt;&lt;em&gt;WpfClientApp&lt;/em&gt; (WPF, SOAP)&lt;/li&gt; &lt;li&gt;&lt;em&gt;ODataClientApp&lt;/em&gt; (Silverlight, ODATA)&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Below is an example query method in the Ajax client. &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TFdKfFEXnKI/AAAAAAAAAxc/4UfLfKG5ozY/s1600-h/01_Endpoints_02%20-%20mod%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_Endpoints_02 - mod" border="0" alt="01_Endpoints_02 - mod" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TFdKlmDK8uI/AAAAAAAAAxg/GPBV3VNbNBk/01_Endpoints_02%20-%20mod_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TFdKsu-5jTI/AAAAAAAAAxk/gieNgXRUOjk/s1600-h/01_Endpoints_03%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_Endpoints_03" border="0" alt="01_Endpoints_03" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFdKx98M6oI/AAAAAAAAAxo/jZDurjwEQg8/01_Endpoints_03_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;font color="#ff0000"&gt;14. ASPNetDynamicDataExample&lt;/font&gt;&lt;/p&gt; &lt;p&gt;I have used a new project template called &lt;em&gt;ASP.NET Dynamic Data Domain Service Web Application&lt;/em&gt; in &lt;a href="http://go.microsoft.com/fwlink/?LinkId=185121"&gt;WCF RIA Services Toolkit&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TFdK4JDl09I/AAAAAAAAAxs/kxFR8IyFkf8/s1600-h/02_ASPNETDynamicData_01%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="02_ASPNETDynamicData_01" border="0" alt="02_ASPNETDynamicData_01" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFdLnSFhS-I/AAAAAAAAAxw/3pcFm6aleF0/02_ASPNETDynamicData_01_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;All samples from part two you can download here&lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_SERVICES^_V1/WCF^_RIA^_Services^_V1.0^_Samples^_Part2.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;p align="left"&gt;Cheers!!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-786833294974972002?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/786833294974972002/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=786833294974972002' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/786833294974972002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/786833294974972002'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/08/wcf-ria-services-v10-samples-part-ii.html' title='WCF RIA SERVICES v1.0 Samples - part II'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/TFdKZJJycQI/AAAAAAAAAxY/UOzYbrKYGmA/s72-c/01_Endpoints_01%20-%20mod_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-1504300996728325187</id><published>2010-07-28T19:32:00.000+02:00</published><updated>2010-07-29T05:09:10.069+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF RIA Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>WCF RIA SERVICES v1.0 Samples - part I</title><content type='html'>&lt;p&gt;In &lt;a href="http://martinkruszynski.blogspot.com/2010_02_01_archive.html" target="_blank"&gt;February&lt;/a&gt; and &lt;a href="http://martinkruszynski.blogspot.com/2010_03_01_archive.html" target="_blank"&gt;March&lt;/a&gt; I wrote five good posts with &lt;a href="http://cid-dbcaf7311f080ba2.office.live.com/browse.aspx/Publiczny/WCF%5E_RIA%5E_VS2010%5E_Prev"&gt;samples about WCF RIA Services Beta&lt;/a&gt;. I have refreshed all these samples to work with WCF RIA Services v1.0. I have tested almost all new WCF RIA Services RC1/RC2/v1 features, too. In the near future I’ll write three posts about WCF RIA Services v1.0 features and various extensions. Today I’ll present first part of&amp;nbsp; it.&lt;/p&gt; &lt;p&gt;I sign changes in my samples:&amp;nbsp; &lt;ul&gt; &lt;li&gt;&lt;font color="#ff0000"&gt;migration changes &amp;amp; new features&lt;/font&gt;  &lt;li&gt;&lt;font color="#ff8000"&gt;migration changes&lt;/font&gt;&amp;nbsp; &lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Let’s start …&lt;/p&gt; &lt;p&gt;&lt;font color="#ff0000"&gt;1. BusinessApplicationDemo&lt;/font&gt;&lt;/p&gt; &lt;p&gt;If a large number of entities can be returned, consider paging on the client by throttling the results. Now, you can use the &lt;a href="http://msdn.microsoft.com/en-us/library/system.servicemodel.domainservices.server.queryattribute.resultlimit(VS.91).aspx"&gt;ResultLimit&lt;/a&gt; property on the &lt;a href="http://msdn.microsoft.com/en-us/library/system.servicemodel.domainservices.server.queryattribute(VS.91).aspx"&gt;QueryAttribute&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TFDtjM_KOAI/AAAAAAAAAvI/5-eY_wNHV7M/s1600-h/01_QueryLimit_01mod3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_QueryLimit_01 - mod" border="0" alt="01_QueryLimit_01 - mod" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TFDtq3GV4fI/AAAAAAAAAvQ/K11G6OBatig/01_QueryLimit_01mod_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Deepesh Mohnani has written &lt;a href="http://blogs.msdn.com/b/deepm/archive/2010/03/16/using-query-resultlimit-with-domaindatasource.aspx"&gt;a great post&lt;/a&gt; how to use server throttling with &lt;em&gt;DomainDataSource&lt;/em&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TFDtx5xVOzI/AAAAAAAAAvU/VoWeYyspDlk/s1600-h/01_QueryLimit_02%20-%20mod%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_QueryLimit_02 - mod" border="0" alt="01_QueryLimit_02 - mod" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFDt5N5JcXI/AAAAAAAAAvY/r6sHOGhvxhc/01_QueryLimit_02%20-%20mod_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;BTW, there are many changes in &lt;em&gt;DomainDataSource&lt;/em&gt;. It&lt;a name="_Toc256583451"&gt; no longer blocks loads when another load is pending&lt;/a&gt;. &lt;a name="_Toc256583457"&gt;SubmitChanges on &lt;em&gt;DomainDataSource&lt;/em&gt; no longer automatically reloads data&lt;/a&gt;. Filter/sort/group descriptors support binding. There is ICommand support for Load/SubmitChanges/RejectChanges. For more details, read &lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3570"&gt;breaking changes&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;In the latest RIA Services bits, the total server count of the resulting query is not requested by default for paging scenarios. To explicitly request that the Count method is called, you can set the &lt;a href="http://msdn.microsoft.com/en-us/library/system.servicemodel.domainservices.client.entityquery.includetotalcount(VS.91).aspx"&gt;IncludeTotalCount&lt;/a&gt; property on the &lt;a href="http://msdn.microsoft.com/en-us/library/system.servicemodel.domainservices.client.entityquery(VS.91).aspx"&gt;EntityQuery&lt;/a&gt; to true. Deepesh Mohnani has a great post about it &lt;a href="http://blogs.msdn.com/b/deepm/archive/2010/03/18/count-t.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TFDuAz2ZgqI/AAAAAAAAAvc/igHN7U9Ubco/s1600-h/01_QueryLimit_05mod3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_QueryLimit_05 - mod" border="0" alt="01_QueryLimit_05 - mod" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFDuIcodpvI/AAAAAAAAAvg/NeBgYDofvAw/01_QueryLimit_05mod_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;em&gt;DomainDataSource&lt;/em&gt; will not request for count in non-paging scenarios. As soon as a page size is specified, &lt;em&gt;DomainDataSource&lt;/em&gt; will set the IncludeTotalCount property on the EntityQuery for you. By subscribing to the LoadingData event on the &lt;em&gt;DomainDataSource&lt;/em&gt; you can override this behavior. &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TFDuNinvdnI/AAAAAAAAAvk/yTvFU4gaIOM/s1600-h/01_QueryLimit_03mod7.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_QueryLimit_03 - mod" border="0" alt="01_QueryLimit_03 - mod" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFDuTqC8KWI/AAAAAAAAAvo/6-6QyygMdnU/01_QueryLimit_03mod_thumb3.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;To reduce the load on the middle tier and database you can use the &lt;a href="http://msdn.microsoft.com/en-us/library/system.servicemodel.domainservices.server.outputcacheattribute(VS.91).aspx"&gt;OutputCacheAttribute&lt;/a&gt; attribute for output caching. Now, clients can cache the response because communication between the client and server has been changed from SOAP with binary encoding (only POST) to REST with binary encoding (GET or POST). &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TFDuakXtJ1I/AAAAAAAAAvs/V5mq4FyVLXw/s1600-h/02_OutputCachemod3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="02_OutputCache - mod" border="0" alt="02_OutputCache - mod" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFDuh0WHO_I/AAAAAAAAAvw/c6WvGnXjixE/02_OutputCachemod_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;In the current release, validation rules are enforced by raising events through the &lt;a href="http://msdn.microsoft.com/en-us/library/system.componentmodel.inotifydataerrorinfo(VS.95).aspx"&gt;INotifyDataErrorInfo&lt;/a&gt; interface. &lt;/p&gt; &lt;p&gt;When you create a custom validation class or attribute, you must now pass to the Silverlight application the name or names of the members that failed validation (with the &lt;a href="http://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.validationresult(VS.91).aspx"&gt;ValidationResult&lt;/a&gt;).&amp;nbsp; &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TFDuoO_YksI/AAAAAAAAAv0/1nSIuf0r4nk/s1600-h/04_SyncValidation_01%20-%20mod%5B7%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="04_SyncValidation_01 - mod" border="0" alt="04_SyncValidation_01 - mod" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFDuulWHYPI/AAAAAAAAAv4/ehT0Qu2vLUY/04_SyncValidation_01%20-%20mod_thumb%5B3%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TFDu1BB_L2I/AAAAAAAAAv8/lm-Tky4pDqc/s1600-h/04_SyncValidation_02%20-%20mod%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="04_SyncValidation_02 - mod" border="0" alt="04_SyncValidation_02 - mod" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFDu77raADI/AAAAAAAAAwA/sXQqy7QtdRY/04_SyncValidation_02%20-%20mod_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TFDvAv-dZ4I/AAAAAAAAAwE/8ENPSqu6Pjg/s1600-h/04_SyncValidation_03%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="04_SyncValidation_03" border="0" alt="04_SyncValidation_03" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TFDvGb-vcuI/AAAAAAAAAwI/fNdHIv33noc/04_SyncValidation_03_thumb%5B3%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;BTW, you can write custom authorization rules, just like validation. There’s extensible AuthorizationContext. See &lt;a href="http://www.nikhilk.net/RIAServices-Authorization.aspx"&gt;CustomAuthorization&lt;/a&gt; (ala CustomValidation) attribute written by Nikhil Kothari. &lt;/p&gt; &lt;p&gt;Now, you can very easily perform async validation.&amp;nbsp; The RIA Services &lt;em&gt;Entity&lt;/em&gt; class has the ValidationErrors collection to manipulate the errors at any time. When you call Add, Remove, or Clear on the collection, it translates that into the necessary INotifyDataErrorInfo events. Simply modifying the collection will result in the UI showing the updated errors. Jeff Handley writes about it &lt;a href="http://jeffhandley.com/archive/2010/05/26/asyncvalidation-again.aspx"&gt;here&lt;/a&gt;. BTW, his async validation example contains the CustomValidation attribute which is different approach than you see below.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TFDvNSMQjNI/AAAAAAAAAwM/BirxIcW6yIA/s1600-h/03_AsyncValidation_01_B%20-%20mod%5B7%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="03_AsyncValidation_01_B - mod" border="0" alt="03_AsyncValidation_01_B - mod" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TFDvUyVodqI/AAAAAAAAAwQ/a54K7Tiu424/03_AsyncValidation_01_B%20-%20mod_thumb%5B3%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TFDvcDXoK1I/AAAAAAAAAwU/eCv-VU3CrCA/s1600-h/03_AsyncValidation_02%20-%20mod%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="03_AsyncValidation_02 - mod" border="0" alt="03_AsyncValidation_02 - mod" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFDvjtQMF4I/AAAAAAAAAwY/J4NiSyLiQhM/03_AsyncValidation_02%20-%20mod_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TFDvreIURcI/AAAAAAAAAwc/xhc-IBj6K6g/s1600-h/03_AsyncValidation_01_A%20-%20mod%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="03_AsyncValidation_01_A - mod" border="0" alt="03_AsyncValidation_01_A - mod" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TFDvzoOU1DI/AAAAAAAAAwg/2oxYPe8mPCQ/03_AsyncValidation_01_A%20-%20mod_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TFDv4PQ23bI/AAAAAAAAAwk/CjCGjfys_vo/s1600-h/03_AsyncValidation_03%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="03_AsyncValidation_03" border="0" alt="03_AsyncValidation_03" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFDv9S0oC1I/AAAAAAAAAwo/iRj3_COwdsM/03_AsyncValidation_03_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Some good links about validation&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/brada/archive/2010/03/23/silverlight-4-ria-services-ready-for-business-validating-data.aspx"&gt;Silverlight 4 + RIA Services - Ready for Business: Validating Data&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://www.nikhilk.net/RIA-Services-Validation.aspx"&gt;RIA Services and Validation&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="http://jeffhandley.com/archive/2010/05/26/asyncvalidation-again.aspx"&gt;Async Validation with RIA Services&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;font color="#ff0000"&gt;2. ConflictsExamples&lt;/font&gt;&lt;/p&gt; &lt;p&gt;Support for LinqToSql classes is now only available in the &lt;a href="http://go.microsoft.com/fwlink/?LinkId=185121"&gt;WCF RIA Services Toolkit&lt;/a&gt;.&amp;nbsp; &lt;p&gt;Resolve methods for resolving conflicts in different types of DALs are not&amp;nbsp; supported in this release of WCF RIA Services.  &lt;p&gt;I have added second version of my example with concurrency conflicts - with Entity Framework.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TFDwDOsmCpI/AAAAAAAAAws/4csFc91uyKQ/s1600-h/05_RoundTripping_01%20-%20mod%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="05_RoundTripping_01 - mod" border="0" alt="05_RoundTripping_01 - mod" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TFDwJLh7uCI/AAAAAAAAAw0/UvoOnXQuDnY/05_RoundTripping_01%20-%20mod_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;In the current release, the entire original entity is not sent to the server for concurrency checks any more. Now, you can specify which members are sent to the server by marking them with the RoundtripOriginal attribute. In addition, any members that are marked with the ConcurrencyCheck attribute or the TimeStamp attribute are automatically sent to the server.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TFDwPB5TLQI/AAAAAAAAAw4/cggHYcRyUPg/s1600-h/05_RoundTripping_02%20-%20mod%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="05_RoundTripping_02 - mod" border="0" alt="05_RoundTripping_02 - mod" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFDwVatIPfI/AAAAAAAAAw8/F7PrTAaox3k/05_RoundTripping_02%20-%20mod_thumb%5B3%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TFDwcIzOikI/AAAAAAAAAxE/VQZqYka-YIk/s1600-h/05_RoundTripping_03%20-%20mod%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="05_RoundTripping_03 - mod" border="0" alt="05_RoundTripping_03 - mod" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFDwjT_opsI/AAAAAAAAAxI/j7oyop8I2Mk/05_RoundTripping_03%20-%20mod_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TFDwr_YkurI/AAAAAAAAAxM/vJKnJv2QX2g/s1600-h/05_RoundTripping_04%20-%20mod%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="05_RoundTripping_04 - mod" border="0" alt="05_RoundTripping_04 - mod" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TFDw0jIzbZI/AAAAAAAAAxQ/ts-qrxJWTyA/05_RoundTripping_04%20-%20mod_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;font color="#ff8000"&gt;3. WindowsAuthentication&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font color="#ff8000"&gt;4. HttpsExample&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font color="#ff8000"&gt;5. CrossDomainExample&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font color="#ff8000"&gt;6. RIAServicesLibrariesDemo&lt;/font&gt;&lt;/p&gt; &lt;p&gt;&lt;font color="#ff8000"&gt;7. MultipleDomainContextsExamples&lt;/font&gt;&lt;/p&gt;&amp;nbsp; &lt;p&gt;All samples from part one you can download here&lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_SERVICES^_V1/WCF^_RIA^_Services^_V1.0^_Samples^_Part1.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;p&gt;Useful links&lt;/p&gt; &lt;p&gt;Start, doc &amp;amp; samples&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a title="http://www.silverlight.net/getstarted/riaservices/" href="http://www.silverlight.net/getstarted/riaservices/"&gt;http://www.silverlight.net/getstarted/riaservices/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/ee707344(VS.91).aspx" href="http://msdn.microsoft.com/en-us/library/ee707344(VS.91).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee707344(VS.91).aspx&lt;/a&gt;  &lt;li&gt;&lt;a title="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3570" href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3570"&gt;Breaking Changes from Beta(PDC 09) to RTW&lt;/a&gt;  &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2387"&gt;Getting Started - RIA Services HRApp Walkthrough&lt;/a&gt;  &lt;li&gt;&lt;a title="http://code.msdn.microsoft.com/RiaServices" href="http://code.msdn.microsoft.com/RiaServices"&gt;WCF RIA Services Code Gallery&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;MIX 10&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://live.visitmix.com/MIX10/Sessions/CL08"&gt;CL08: Microsoft Silverlight 4 Business Applications&lt;/a&gt;  &lt;li&gt;&lt;a href="http://live.visitmix.com/MIX10/Sessions/CL09"&gt;CL09: Developing with WCF RIA Services Quickly and Effectively&lt;/a&gt;  &lt;li&gt;&lt;a href="http://live.visitmix.com/MIX10/Sessions/CL50"&gt;CL50: Search Engine Optimization for Microsoft Silverlight&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Channel 9&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a title="http://channel9.msdn.com/posts/Psychlist1972/Jeff-Handley-on-WCF-RIA-Services-for-Silverlight-4/" href="http://channel9.msdn.com/posts/Psychlist1972/Jeff-Handley-on-WCF-RIA-Services-for-Silverlight-4/"&gt;Jeff Handley on WCF RIA Services for Silverlight 4&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/posts/Psychlist1972/Pete-at-Microsoft-WCF-RIA-Services-Team-Interview/"&gt;Pete at Microsoft: WCF RIA Services Team Interview&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Silverlight TV&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/shows/SilverlightTV/Silverlight-TV-18-WCF-RIA-Services-Validation/"&gt;Silverlight TV 18: WCF RIA Services Validation&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/shows/SilverlightTV/Silverlight-TV-20-Community-Driven-Development-with-WCF-RIA-Services/"&gt;Silverlight TV 20: Community Driven Development with WCF RIA Services&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/shows/SilverlightTV/Silverlight-TV-26-Exposing-SOAP-OData-and-JSON-Endpoints-for-RIA-Services/"&gt;Silverlight TV 26: Exposing SOAP, OData, and JSON Endpoints for RIA Services&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/shows/SilverlightTV/WCF-RIA-Services-v10-Launch-Silverlight-TV-28/"&gt;WCF RIA Services v1.0 Launch! (Silverlight TV 28)&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;TechEd 10&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.msteched.com/2010/NorthAmerica/WEB307"&gt;Effective RIA: Tips and Tricks for Building Effective Rich Internet Applications&amp;nbsp; [WEB307]&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Silverlight 4 Hands on Labs&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/SL4BusinessModule2/SL4LOB_02_Event_Manager/"&gt;Silverlight Business Apps: Module 2 - WCF RIA Services, Creating and Editing Data, and Data Binding&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/SL4BusinessModule2/SL4LOB_02_01_RIAServices/"&gt;Silverlight Business Apps: Module 2.1 - WCF RIA Services&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/SL4BusinessModule2/SL4LOB_02_02_EditingEntities/"&gt;Silverlight Business Apps: Module 2.2 - Using WCF RIA Services to Edit Entities&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/SL4BusinessModule2/SL4LOB_02_03_ShowingEvents/"&gt;Silverlight Business Apps: Module 2.3 - Showing Master/Details Records Using WCF RIA Services&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Blogs &amp;amp; Sites&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a title="http://blogs.msdn.com/b/brada/" href="http://blogs.msdn.com/b/brada/"&gt;http://blogs.msdn.com/b/brada/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://www.nikhilk.net/" href="http://www.nikhilk.net/"&gt;http://www.nikhilk.net/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://jeffhandley.com/" href="http://jeffhandley.com/"&gt;http://jeffhandley.com/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://blogs.msdn.com/b/deepm/" href="http://blogs.msdn.com/b/deepm/"&gt;http://blogs.msdn.com/b/deepm/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://blogs.msdn.com/b/kylemc/" href="http://blogs.msdn.com/b/kylemc/"&gt;http://blogs.msdn.com/b/kylemc/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://mtaulty.com/" href="http://mtaulty.com/"&gt;http://mtaulty.com/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://weblogs.asp.net/fredriknormen/" href="http://weblogs.asp.net/fredriknormen/"&gt;http://weblogs.asp.net/fredriknormen/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://www.riaservicesblog.net/Blog/" href="http://www.riaservicesblog.net/Blog/"&gt;http://www.riaservicesblog.net/Blog/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://johnpapa.net/" href="http://johnpapa.net/"&gt;http://johnpapa.net/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://briannoyes.net/" href="http://briannoyes.net/"&gt;http://briannoyes.net/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://www.silverlightshow.net/" href="http://www.silverlightshow.net/"&gt;http://www.silverlightshow.net/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://10rem.net/blog" href="http://10rem.net/blog"&gt;http://10rem.net/blog&lt;/a&gt;  &lt;li&gt;&lt;a title="http://blogs.msdn.com/b/wpfsldesigner/" href="http://blogs.msdn.com/b/wpfsldesigner/"&gt;http://blogs.msdn.com/b/wpfsldesigner/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://weblogs.asp.net/scottgu/" href="http://weblogs.asp.net/scottgu/"&gt;http://weblogs.asp.net/scottgu/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://tomasz.janczuk.org/" href="http://tomasz.janczuk.org/"&gt;http://tomasz.janczuk.org/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://timheuer.com/blog/" href="http://timheuer.com/blog/"&gt;http://timheuer.com/blog/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://blogs.msdn.com/b/silverlightws/" href="http://blogs.msdn.com/b/silverlightws/"&gt;http://blogs.msdn.com/b/silverlightws/&lt;/a&gt;  &lt;li&gt;&lt;a title="http://blogs.msdn.com/b/scmorris/" href="http://blogs.msdn.com/b/scmorris/"&gt;http://blogs.msdn.com/b/scmorris/&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Cheers and enjoy!! &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-1504300996728325187?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/1504300996728325187/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=1504300996728325187' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/1504300996728325187'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/1504300996728325187'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/07/wcf-ria-services-v10-samples-part-i.html' title='WCF RIA SERVICES v1.0 Samples - part I'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/TFDtq3GV4fI/AAAAAAAAAvQ/K11G6OBatig/s72-c/01_QueryLimit_01mod_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-345975684047571969</id><published>2010-07-06T20:11:00.000+02:00</published><updated>2010-07-07T00:34:18.648+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='SketchFlow'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 4: SketchFlow improvements</title><content type='html'>&lt;p&gt;What’s new in SketchFlow, which is now distributed as part of Expression Studio 4 Ultimate ?&lt;/p&gt; &lt;p&gt;In Expression Blend 4, the &lt;em&gt;MockupDemonstration&lt;/em&gt; sample contains new &lt;em&gt;mockup controls&lt;/em&gt; which help you create prototypes quickly and easily. Mockup controls are templates that include common web and desktop controls.&amp;nbsp; They look like sketches, but are more interactive. You can enable&lt;em&gt;&amp;nbsp;&lt;/em&gt;them for any SketchFlow project.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TDOuYqk6wJI/AAAAAAAAAuY/mPG5vUKqC98/s1600-h/01_SketchFlow_013.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_SketchFlow_01" border="0" alt="01_SketchFlow_01" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TDOufyqL3WI/AAAAAAAAAuc/RL25KPLIGpA/01_SketchFlow_01_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TDOulSSOVJI/AAAAAAAAAug/x9ajdyPoPB4/s1600-h/01_SketchFlow_023.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_SketchFlow_02" border="0" alt="01_SketchFlow_02" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TDOuq-vHlzI/AAAAAAAAAuk/Wg_mXp6jrho/01_SketchFlow_02_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;There is a new pause toggle button in each frame of a SketchFlow Animation. When toggled on, this causes the &lt;em&gt;SketchFlowAnimation&lt;/em&gt; to pause at that frame when playing back in the SketchFlow Player. In the SketchFlow Player, there is a play/pause button, too.&lt;/p&gt; &lt;p&gt;Expression Blend has new &lt;em&gt;SketchFlowAnimationTrigger&lt;/em&gt; which responds to a frame change or the pausing or completion of a SketchFlow animation.&lt;/p&gt; &lt;p&gt;You can also apply &lt;em&gt;TransitionEffect&lt;/em&gt; to a SketchFlow animation when the transition time is greater than 0.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TDOuxMK23ZI/AAAAAAAAAuo/nwQS46dDz6U/s1600-h/01_SketchFlow_033.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_SketchFlow_03" border="0" alt="01_SketchFlow_03" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TDOu34tpZTI/AAAAAAAAAus/Ovtab-jm8OU/01_SketchFlow_03_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;In the SketchFlow player you can now pan and resize the screens at runtime. A subtle border surrounds each screen that a user can click and drag to resize the screen. If the original dimensions or the resized area of the screen is larger than the viewing area, scrollbars appear. &lt;/p&gt; &lt;p&gt;The SketchFlow map is now accessed using the Map button, next to the Navigation tab. The map is opened as an overlay above the current screen.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TDOu9QHamyI/AAAAAAAAAuw/C4nMSlFnvKo/s1600-h/01_SketchFlow_063.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_SketchFlow_06" border="0" alt="01_SketchFlow_06" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TDOvDp88MQI/AAAAAAAAAu0/gensDuhgNC8/01_SketchFlow_06_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;When using the Export to Word feature,&amp;nbsp; a new option has been added. Now you can export feedback in the Word document. &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TDOvJx6fH1I/AAAAAAAAAu4/E6oBl6urLBs/s1600-h/01_SketchFlow_043.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_SketchFlow_04" border="0" alt="01_SketchFlow_04" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TDOvQ6dwRAI/AAAAAAAAAu8/Fb5F62NC6hM/01_SketchFlow_04_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TDOvU7lHbMI/AAAAAAAAAvA/KrzewmmhKkU/s1600-h/01_SketchFlow_053.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_SketchFlow_05" border="0" alt="01_SketchFlow_05" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TDOvaLjP-xI/AAAAAAAAAvE/JjOHWDru2cY/01_SketchFlow_05_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/Blend4/Blend4^_SketchFlow.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;p&gt;You can read about other new features (publish to SharePoint, convert feedback to TFS work items, SketchStyles, naming screens) &lt;a href="http://www.microsoft.com/expression/products/Blend_Features.aspx"&gt;here&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;&lt;a href="http://martinkruszynski.blogspot.com/2010/06/expression-blend-4-conditional.html"&gt;Conditional behaviors and the data store&lt;/a&gt; are very useful for prototyping, too.&lt;/p&gt; &lt;p&gt;Below are links that I recommend for learning new SketchFlow features&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://www.msteched.com/2010/NorthAmerica/DEV318"&gt;Prototyping Rich Microsoft Silverlight 4 Applications with Microsoft Expression Blend + SketchFlow [TechEd 2010]&lt;/a&gt;  &lt;li&gt;&lt;a href="http://electricbeach.org/?p=438"&gt;Introducing Blend 4 – For Silverlight, WPF and Windows Phone&lt;/a&gt;  &lt;li&gt;&lt;a href="http://electricbeach.org/?p=583"&gt;Fonts in SketchFlow&lt;/a&gt;  &lt;li&gt;&lt;a href="http://electricbeach.org/?p=706"&gt;Blend 4: Collaborative SketchFlow Feedback with SharePoint&lt;/a&gt;  &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/expression/archive/2010/05/13/how-to-add-mockup-controls-to-your-expression-blend-library.aspx"&gt;How to add mockup controls to your Expression Blend library&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.uxmagic.com/blog/post/2010/06/04/Blend-4-to-get-huge-SketchFlow-Prototyping-upgrade-with-new-e2809cMockupe2809d-controls.aspx"&gt;Blend 4 to get huge SketchFlow Prototyping upgrade with new “Mockup” controls&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.hardcodet.net/2010/05/announcing-sketchables"&gt;Announcing Sketchables – Rapid Mockup Creation with SketchFlow&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-345975684047571969?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/345975684047571969/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=345975684047571969' title='9 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/345975684047571969'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/345975684047571969'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/07/expression-blend-4-sketchflow.html' title='Expression Blend 4: SketchFlow improvements'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/TDOufyqL3WI/AAAAAAAAAuc/RL25KPLIGpA/s72-c/01_SketchFlow_01_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>9</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-4048659095221798975</id><published>2010-07-01T23:55:00.000+02:00</published><updated>2010-07-02T03:41:29.197+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 4: Improvements to Photoshop file import</title><content type='html'>&lt;p&gt;In Expression Blend 4 some layer effects (&lt;em&gt;Drop Shadow&lt;/em&gt;, &lt;em&gt;Inner Shadow&lt;/em&gt;, &lt;em&gt;Color Overlay&lt;/em&gt;, &lt;em&gt;Outer Glow&lt;/em&gt;, &lt;em&gt;Inner Glow&lt;/em&gt;, &lt;em&gt;Gradient Overlay&lt;/em&gt;, &lt;em&gt;Bevel &amp;amp; Emboss&lt;/em&gt;, &lt;em&gt;Satin&lt;/em&gt;) can now be merged with their layers. &lt;/p&gt; &lt;p&gt;If a layer effect has been applied to a layer, the &lt;em&gt;Layer effect&lt;/em&gt; icon appears next to the layer in the &lt;em&gt;Import Adobe Photoshop File&lt;/em&gt; dialog box. A layer effect can be imported either by selecting the &lt;em&gt;Flattened bitmap&lt;/em&gt; import option or by merging the layer with other layers.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TC1DW6pC_jI/AAAAAAAAAuI/K3o6XumM5WA/s1600-h/01_PhotoshopImport_013.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_PhotoshopImport_01" border="0" alt="01_PhotoshopImport_01" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TC1Dfm84xpI/AAAAAAAAAuM/aMHTHz4uzh8/01_PhotoshopImport_01_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TC1Dn1nEMXI/AAAAAAAAAuQ/qJFn6tjnSig/s1600-h/01_PhotoshopImport_023.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_PhotoshopImport_02" border="0" alt="01_PhotoshopImport_02" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TC1Dx40rx1I/AAAAAAAAAuU/bPPZd1dBWMU/01_PhotoshopImport_02_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/Blend4/Blend4^_PhotoshopImport.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;p align="left"&gt;Adam Kinney wrote a great &lt;a href="http://adamkinney.com/blog/2010/06/30/import-art-from-photoshop-and-make-into-silverlight-controls/"&gt;post&lt;/a&gt; about importing art from Photoshop and making into Silverlight controls. You should read it! &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-4048659095221798975?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/4048659095221798975/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=4048659095221798975' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4048659095221798975'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4048659095221798975'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/07/expression-blend-4-improvements-to.html' title='Expression Blend 4: Improvements to Photoshop file import'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_D_LHhy5fi8o/TC1Dfm84xpI/AAAAAAAAAuM/aMHTHz4uzh8/s72-c/01_PhotoshopImport_01_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-5454243395714346342</id><published>2010-06-28T23:49:00.000+02:00</published><updated>2010-06-29T07:54:54.637+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4 SDK'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 4: Business Application Development</title><content type='html'>&lt;p&gt;Today I’ll write about support for MVVM and design-time resources. You can simplify your daily work. Read this post! &lt;/p&gt; &lt;p&gt;Expression Blend offers new sample data, behaviors, and project templates to support MVVM.  &lt;p&gt;It includes the &lt;em&gt;Silverlight/WPF Databound Application&lt;/em&gt; project template that offers a basic starting point for MVVM pattern applications. The &lt;em&gt;UserControl with ViewModel&lt;/em&gt; item template is very helpful, too.  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TCmH8Fp7tuI/AAAAAAAAAso/oStayOQZ96M/s1600-h/01_MVVM_023.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_MVVM_02" border="0" alt="01_MVVM_02" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TCmIBIa3BBI/AAAAAAAAAss/ISM_GvKdqa8/01_MVVM_02_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TCmIFWF1PCI/AAAAAAAAAsw/gGij6-Rz_yc/s1600-h/01_MVVM_036.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_MVVM_03" border="0" alt="01_MVVM_03" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TCmILVsC5XI/AAAAAAAAAs0/W-YhZcSfGRY/01_MVVM_03_thumb2.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Methods and commands of CLR objects show up just like data in the data pane. You can now bind execution of methods and commands against UI elements with drag and drop. Blend automatically generates an &lt;em&gt;InvokeCommandAction&lt;/em&gt; or a &lt;em&gt;CallMethodAction&lt;/em&gt; with default trigger! &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TCmIT3nKIiI/AAAAAAAAAs4/6tIaQA46m5E/s1600-h/01_MVVM_06Mod3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_MVVM_06 - Mod" border="0" alt="01_MVVM_06 - Mod" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TCmIcbrqleI/AAAAAAAAAs8/BmbQGI7RCMk/01_MVVM_06Mod_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TCmIjy8V5iI/AAAAAAAAAtA/tMjav_zKp-w/s1600-h/01_MVVM_073.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_MVVM_07" border="0" alt="01_MVVM_07" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TCmIso7vOwI/AAAAAAAAAtE/Kb8_E9Fc05A/01_MVVM_07_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;New Blend can generate sample data for CLR classes, even for classes that have private constructors, properties without setters and so on. If your application uses the MVVM pattern, you can generate design-time sample view models and&amp;nbsp; continue to design your application in the context of this data.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TCmI0FwcYyI/AAAAAAAAAtI/GuWGi4Ctusw/s1600-h/01_MVVM_083.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_MVVM_08" border="0" alt="01_MVVM_08" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TCmI8cwBqBI/AAAAAAAAAtM/hXu9WlnywB4/01_MVVM_08_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TCmJCj3ao2I/AAAAAAAAAtQ/PEOONGJS_84/s1600-h/01_MVVM_093.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_MVVM_09" border="0" alt="01_MVVM_09" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TCmJJYIX2qI/AAAAAAAAAtU/XBSPj4FDESU/01_MVVM_09_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TCmJOGQWbWI/AAAAAAAAAtY/1GwdEbqYduI/s1600-h/01_MVVM_113.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_MVVM_11" border="0" alt="01_MVVM_11" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TCmJT6I-WVI/AAAAAAAAAtc/gTotYvw69rg/01_MVVM_11_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TCmJcnyPJ3I/AAAAAAAAAtg/ye35Q515ojg/s1600-h/01_MVVM_13Mod3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_MVVM_13 - Mod" border="0" alt="01_MVVM_13 - Mod" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TCmJl-7SJNI/AAAAAAAAAtk/dMqnNG5LrjI/01_MVVM_13Mod_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TCmJwqglhpI/AAAAAAAAAto/fZJxaXDI2Oc/s1600-h/01_MVVM_143.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_MVVM_14" border="0" alt="01_MVVM_14" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TCmJ9JAcfFI/AAAAAAAAAts/69EYzB7dGH0/01_MVVM_14_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Modern applications are often broken into dynamically loaded modules (f.e MEF). At design time, this often leads to problems because not all required resources are available in an individual module. With Blend 4, designers can load in a temporary resource file that is only used for resource resolution at design time, enabling a great design experience even in complicated modular scenarios. When you open a project in Blend and the current document contains resources that cannot be resolved and your solution contains at least one ResourceDictionary file, the &lt;em&gt;Add Design-time Resource Dictionary&lt;/em&gt; dialog will open. &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TCmKFksagOI/AAAAAAAAAt0/3dyIAA-Zn8A/s1600-h/01_MVVM_153.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_MVVM_15" border="0" alt="01_MVVM_15" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TCmKPVBiNEI/AAAAAAAAAt4/WtB2GDx8QwM/01_MVVM_15_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Below you see my sample application with all features described in this post. Runtime data is different than design-time data.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TCmKccD6xTI/AAAAAAAAAt8/FBpENV6rjvo/s1600-h/01_MVVM_173.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_MVVM_17" border="0" alt="01_MVVM_17" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TCmKq3G1c2I/AAAAAAAAAuE/YcY47Ccpzqs/01_MVVM_17_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Complete solution you can download here.&lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/Blend4/Blend4^_MVVMSampleData.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;p align="left"&gt;Useful links&lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div align="left"&gt;&lt;a href="http://www.msteched.com/2010/NorthAmerica/WEB201"&gt;Authoring for Microsoft Silverlight 4 with Microsoft Expression Blend [TechEd 2010]&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;div align="left"&gt;&lt;a href="http://live.visitmix.com/MIX10/Sessions/EX14"&gt;Understanding the Model-View-ViewModel Pattern [MIX 10]&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;div align="left"&gt;&lt;a href="http://electricbeach.org/?p=438"&gt;Introducing Blend 4 – For Silverlight, WPF and Windows Phone&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;div align="left"&gt;&lt;a href="http://adamkinney.wordpress.com/2010/05/04/design-time-resources-in-expression-blend-4-rc/"&gt;Design-time Resources in Expression Blend 4 RC&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;div align="left"&gt;&lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2010/03/27/silverlight-4-blend-4-mvvm-binding-dependencyobject.aspx"&gt;Silverlight 4, Blend 4, MVVM, Binding, DependencyObject&lt;/a&gt;&lt;/div&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-5454243395714346342?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/5454243395714346342/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=5454243395714346342' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5454243395714346342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5454243395714346342'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/06/expression-blend-4-business-application.html' title='Expression Blend 4: Business Application Development'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/TCmIBIa3BBI/AAAAAAAAAss/ISM_GvKdqa8/s72-c/01_MVVM_02_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-4831642698831599035</id><published>2010-06-25T00:05:00.000+02:00</published><updated>2010-06-25T02:55:32.141+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4 SDK'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 4: Conditional Behaviors &amp; Data Store</title><content type='html'>&lt;p&gt;You can now build conditional logic without the need to write code. In addition, different parts of your application can communicate via data store without writing any code, too!  &lt;p&gt;When you fill user and password fields and click Login button in my sample application, user name and authentication info are written to Data Store, main menu and Home page with logged user name are displayed.  &lt;p&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_ConBehDataStore_03" border="0" alt="01_ConBehDataStore_03" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TCP9uIdfXaI/AAAAAAAAAsA/PlPCYRTMGfM/01_ConBehDataStore_03_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt; &lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_ConBehDataStore_06" border="0" alt="01_ConBehDataStore_06" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TCP93n3zBDI/AAAAAAAAAsE/CzyuWgtzZVg/01_ConBehDataStore_06_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;  &lt;p&gt;New &lt;em&gt;SetDataStoreValueAction&lt;/em&gt; writes the value of a property to Data Store and optionally animates the change over time.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TCP98zJW4PI/AAAAAAAAAsI/_lj2ZEODXwc/s1600-h/01_ConBehDataStore_02%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_ConBehDataStore_02" border="0" alt="01_ConBehDataStore_02" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TCP-C1JM95I/AAAAAAAAAsM/5Kh53vsazVg/01_ConBehDataStore_02_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Using Data panel you can manage the Data Store and its properties.&lt;/p&gt; &lt;p&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_ConBehDataStore_01" border="0" alt="01_ConBehDataStore_01" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TCP-G3Bu0KI/AAAAAAAAAsQ/-7d095vYw4g/01_ConBehDataStore_01_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/p&gt; &lt;p&gt;New &lt;em&gt;DataStoreChangeTrigger&lt;/em&gt; fires when a specified property in the Data Store changes.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TCP-NzunzYI/AAAAAAAAAsY/CWoXC-2D9rg/s1600-h/01_ConBehDataStore_04%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_ConBehDataStore_04" border="0" alt="01_ConBehDataStore_04" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TCP-WN36aKI/AAAAAAAAAsc/tmMZY_whSCk/01_ConBehDataStore_04_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;You can drag a property from the DataStore onto the art board.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TCP-bDIt2QI/AAAAAAAAAsg/VahS2qiTER8/s1600-h/01_ConBehDataStore_05%20-%20Mod%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_ConBehDataStore_05 - Mod" border="0" alt="01_ConBehDataStore_05 - Mod" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TCP-gsVQJsI/AAAAAAAAAsk/HQNWpnFO7h4/01_ConBehDataStore_05%20-%20Mod_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/Blend4/Blend4^_ConditionalBehaviorsAndDataStore.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;p align="left"&gt;Useful links&lt;/p&gt; &lt;ul&gt; &lt;li&gt; &lt;div align="left"&gt;&lt;a href="http://channel9.msdn.com/shows/SilverlightTV/Using-Behaviors-in-Blend-4-Silverlight-TV-30/"&gt;Using Behaviors in Blend 4 (Silverlight TV 30)&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;div align="left"&gt;&lt;a href="http://electricbeach.org/?p=344"&gt;SketchFlow: Conditional Navigation Behavior Sample&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;div align="left"&gt;&lt;a href="http://electricbeach.org/?p=349"&gt;SketchFlow: Global State Behavior Sample&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;div align="left"&gt;&lt;a href="http://electricbeach.org/?p=438"&gt;Introducing Blend 4 – For Silverlight, WPF and Windows Phone&lt;/a&gt;&lt;/div&gt; &lt;li&gt; &lt;p&gt;&lt;a href="http://openlightgroup.net/Blog/tabid/58/EntryId/103/Expression-Blend-Number-Guesser-using-DataStore.aspx"&gt;Expression Blend Number Guesser using DataStore&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-4831642698831599035?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/4831642698831599035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=4831642698831599035' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4831642698831599035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4831642698831599035'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/06/expression-blend-4-conditional.html' title='Expression Blend 4: Conditional Behaviors &amp;amp; Data Store'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_D_LHhy5fi8o/TCP9uIdfXaI/AAAAAAAAAsA/PlPCYRTMGfM/s72-c/01_ConBehDataStore_03_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-9046682148455209185</id><published>2010-06-22T23:51:00.002+02:00</published><updated>2010-06-23T09:07:35.481+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4 SDK'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 4: Transition Effects</title><content type='html'>&lt;p&gt;Blend’s Transition Effects provide a pixel-based transition from one visual state to another.&lt;/p&gt; &lt;p&gt;A TransitionEffect is a PixelShader that has an animatable Progress property. There are several of these in Blend SDK and you can write your own.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TCGlcpI--5I/AAAAAAAAAro/E99SBWzHWsE/s1600-h/01_TransitionEffects_01%5B7%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_TransitionEffects_01" border="0" alt="01_TransitionEffects_01" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TCGlmqxQ-uI/AAAAAAAAArs/95hwfzaw_tU/01_TransitionEffects_01_thumb%5B3%5D.png?imgmax=800" width="644" height="483"&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TCGlxNKufrI/AAAAAAAAArw/lo4cuUZFJQU/s1600-h/01_TransitionEffects_02%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_TransitionEffects_02" border="0" alt="01_TransitionEffects_02" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TCGl9ICqCAI/AAAAAAAAAr0/oTGrN1QEtaM/01_TransitionEffects_02_thumb%5B1%5D.png?imgmax=800" width="644" height="483"&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TCGmH_fQcWI/AAAAAAAAAr4/F9N9oUNPcAo/s1600-h/01_TransitionEffects_03%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_TransitionEffects_03" border="0" alt="01_TransitionEffects_03" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TCGmULMMtqI/AAAAAAAAAr8/b7YGCRfKFNs/01_TransitionEffects_03_thumb%5B1%5D.png?imgmax=800" width="644" height="483"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/Blend4/Blend4^_TransitionEffects.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;p align="left"&gt;Useful links&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://live.visitmix.com/MIX10/Sessions/CL02"&gt;MIX 10: Authoring for Windows Phone, Silverlight 4 and WPF 4 with Expression Blend&lt;/a&gt;  &lt;li&gt;&lt;a href="http://live.visitmix.com/MIX10/Sessions/CL55"&gt;MIX 10: Dynamic Layout and Transitions for Microsoft Silverlight 4 with Microsoft Expression Blend&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/shows/SilverlightTV/Creating-Rich-Interactions-Using-Blend-4-Transition-Effects-Fluid-Layout-and-Layout-States-Silverlig/"&gt;Silverlight TV 32: Creating Rich Interactions Using Blend 4: Transition Effects, Fluid Layout, and Layout States&lt;/a&gt;  &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/expression/archive/2010/03/16/dynamic-layout-and-transitions-in-expression-blend-4.aspx"&gt;Dynamic Layout and Transitions in Expression Blend 4&lt;/a&gt;  &lt;li&gt;&lt;a href="http://electricbeach.org/?p=438"&gt;Introducing Blend 4 – For Silverlight, WPF and Windows Phone&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-9046682148455209185?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/9046682148455209185/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=9046682148455209185' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/9046682148455209185'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/9046682148455209185'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/06/expression-blend-4-transition-effects.html' title='Expression Blend 4: Transition Effects'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_D_LHhy5fi8o/TCGlmqxQ-uI/AAAAAAAAArs/95hwfzaw_tU/s72-c/01_TransitionEffects_01_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-7546085300806132641</id><published>2010-06-20T23:20:00.000+02:00</published><updated>2010-06-21T03:26:50.351+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4 SDK'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 4: Fluid UI - Enhanced FluidMoveBehavior &amp; Layout States</title><content type='html'>&lt;p&gt;In Blend 4, Fluid Layout has many new tricks. You can now define layout animations between a master list and a detail view and animate things that move between lists. You can also animate the process of items being added to and removed from a ListBox.&lt;/p&gt; &lt;p&gt;An exciting enhancement has been made to the &lt;em&gt;FluidMoveBehavior&lt;/em&gt;. &lt;/p&gt; &lt;p align="center"&gt;&lt;strong&gt;FluidMoveBehaviorMasterDetail&lt;/strong&gt;&lt;br&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TB6-lvzyhyI/AAAAAAAAAq0/R8ffvmwwGqQ/s1600-h/01_FluidMoveBehavior_MasterDetails_01%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_FluidMoveBehavior_MasterDetails_01" border="0" alt="01_FluidMoveBehavior_MasterDetails_01" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TB6-tXETNUI/AAAAAAAAAq4/w7YagCBskBI/01_FluidMoveBehavior_MasterDetails_01_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TB6-0v8d2cI/AAAAAAAAAq8/6e_ET0t8P5E/s1600-h/01_FluidMoveBehavior_MasterDetails_02%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_FluidMoveBehavior_MasterDetails_02" border="0" alt="01_FluidMoveBehavior_MasterDetails_02" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TB6-9PYTeHI/AAAAAAAAArA/M7tE8bAxvuQ/01_FluidMoveBehavior_MasterDetails_02_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TB6_HRzj8lI/AAAAAAAAArM/BaSuGDmXGAc/s1600-h/01_FluidMoveBehavior_MasterDetails_03%20-%20Mod%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_FluidMoveBehavior_MasterDetails_03 - Mod" border="0" alt="01_FluidMoveBehavior_MasterDetails_03 - Mod" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TB6_SuKptjI/AAAAAAAAArQ/1GWlgAGwDy8/01_FluidMoveBehavior_MasterDetails_03%20-%20Mod_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;By using &lt;em&gt;FluidMoveBehavior&lt;/em&gt; together with &lt;em&gt;FluidMoveSetTagBehavior&lt;/em&gt;, you can animate a transition from a specified starting point, even if that initial location is specified only by a reference to the data that is displayed in your application and may exist in a different scope. Data tagged by &lt;em&gt;FluidMoveSetTagBehavior &lt;/em&gt;is available for use with &lt;em&gt;FluidMoveBehavior&lt;/em&gt; by using a hidden data store.&lt;/p&gt; &lt;p&gt;&lt;em&gt;FluidMoveBehavior&lt;/em&gt; is optimized for two main scenarios: animating from a master list to a detail view and animating list items from one list to another.&lt;/p&gt; &lt;p align="center"&gt;&lt;strong&gt;FluidMoveBehaviorListToList&lt;/strong&gt;&lt;br&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TB6_Xp9Zd8I/AAAAAAAAArU/RqMD8JlNDmc/s1600-h/02_FluidMoveBehavior_ListToList_01%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="02_FluidMoveBehavior_ListToList_01" border="0" alt="02_FluidMoveBehavior_ListToList_01" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TB6_dW_kLzI/AAAAAAAAArY/4GWZ8-3gQnU/02_FluidMoveBehavior_ListToList_01_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TB6_lPPavCI/AAAAAAAAArc/aY8UnADH9gU/s1600-h/02_FluidMoveBehavior_ListToList_03%5B7%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="02_FluidMoveBehavior_ListToList_03" border="0" alt="02_FluidMoveBehavior_ListToList_03" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TB6_tkEfQ1I/AAAAAAAAArg/5dnwiB_3jjw/02_FluidMoveBehavior_ListToList_03_thumb%5B3%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;In Silverlight 4, a special VisualStateGroup called &lt;em&gt;LayoutStates&lt;/em&gt; has been added specifically for animating adding items to and removing items from a &lt;em&gt;ListBox &lt;/em&gt;(or custom &lt;em&gt;ItemsControl&lt;/em&gt;). You may have a look at my previous &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_11.html"&gt;post&lt;/a&gt; (updated sample you can get from &lt;a href="http://cid-dbcaf7311f080ba2.office.live.com/self.aspx/Publiczny/SL4/RTW/SL4^_RTW^_Samples^_Part1.zip"&gt;here&lt;/a&gt;). &lt;p&gt;If you also apply a &lt;em&gt;FluidMoveBehavior&lt;/em&gt; behavior to the items panel of the &lt;em&gt;ListBox&lt;/em&gt;, existing items will smoothly make room for entering new items. &lt;p align="center"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="02_FluidMoveBehavior_ListToList_02" border="0" alt="02_FluidMoveBehavior_ListToList_02" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TB6_2EJZOCI/AAAAAAAAArk/6BTt5NbJEn4/02_FluidMoveBehavior_ListToList_02_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/Blend4/Blend4^_DynamicLayout.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;p&gt;Useful links&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://live.visitmix.com/MIX10/Sessions/CL55"&gt;MIX 10: Dynamic Layout and Transitions for Microsoft Silverlight 4 with Microsoft Expression Blend&lt;/a&gt;  &lt;li&gt;&lt;a href="http://channel9.msdn.com/shows/SilverlightTV/Creating-Rich-Interactions-Using-Blend-4-Transition-Effects-Fluid-Layout-and-Layout-States-Silverlig/"&gt;Silverlight TV 32: Creating Rich Interactions Using Blend 4: Transition Effects, Fluid Layout, and Layout States&lt;/a&gt;  &lt;li&gt;&lt;a href="http://www.microsoft.com/design/toolbox/tutorials/fluidui/"&gt;.toolbox: Introduction to Fluid UI&lt;/a&gt;  &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/expression/archive/2010/03/16/dynamic-layout-and-transitions-in-expression-blend-4.aspx"&gt;Dynamic Layout and Transitions in Expression Blend 4&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-7546085300806132641?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/7546085300806132641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=7546085300806132641' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7546085300806132641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7546085300806132641'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/06/expression-blend-4-fluid-ui-enhanced.html' title='Expression Blend 4: Fluid UI - Enhanced FluidMoveBehavior &amp;amp; Layout States'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_D_LHhy5fi8o/TB6-tXETNUI/AAAAAAAAAq4/w7YagCBskBI/s72-c/01_FluidMoveBehavior_MasterDetails_01_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-4267902263622009962</id><published>2010-06-16T23:20:00.000+02:00</published><updated>2010-06-17T01:40:04.818+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 4 SDK'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 4: Path Layout</title><content type='html'>&lt;p&gt;Expression Blend 4 now lets you design many complex layouts without writing any code.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Useful links&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://live.visitmix.com/MIX10/Sessions/CL02"&gt;MIX 10: Authoring for Windows Phone, Silverlight 4 and WPF 4 with Expression Blend&lt;/a&gt;&lt;br&gt;&lt;a href="http://channel9.msdn.com/shows/SilverlightTV/Silverlight-TV-25-No-More-Boxes-Exploring-the-PathListBox/"&gt;Silverlight TV 25: No More Boxes! Exploring the PathListBox&lt;/a&gt;&lt;br&gt;&lt;a href="http://www.microsoft.com/design/toolbox/tutorials/pathlistbox/"&gt;.toolbox: Discovering the PathListBox Control&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Christian Schormann&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://electricbeach.org/?p=438"&gt;Introducing Blend 4 – For Silverlight, WPF and Windows Phone&lt;/a&gt;  &lt;li&gt;&lt;a href="http://electricbeach.org/?p=503"&gt;Blend 4: About Path Layout, Part I&lt;/a&gt;  &lt;li&gt;&lt;a href="http://electricbeach.org/?p=529"&gt;Blend 4: About Path Layout, Part II&lt;/a&gt;  &lt;li&gt;&lt;a href="http://electricbeach.org/?p=550"&gt;Blend 4: About Path Layout, Sidebar – More About ListBox Than You Ever Wanted To Know&lt;/a&gt;  &lt;li&gt;&lt;a href="http://electricbeach.org/?p=606"&gt;Blend 4: About Path Layout, Part III&lt;/a&gt;  &lt;li&gt;&lt;a href="http://electricbeach.org/?p=653"&gt;Blend 4: About Path Layout, Part IV&lt;/a&gt;  &lt;li&gt;&lt;a href="http://electricbeach.org/?p=711"&gt;New Utility, Links and Tutorials for Path-Based Layout&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Adam Kinney&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://adamkinney.wordpress.com/2010/03/15/expression-blend-4-beta-feature-overview-available-for-download/"&gt;Expression Blend 4 Beta Feature Overview available for download&lt;/a&gt;  &lt;li&gt;&lt;a href="http://adamkinney.wordpress.com/2010/04/16/a-few-cool-new-features-added-in-expression-blend-4-rc/"&gt;A few cool new features added in Expression Blend 4 RC&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;PathListBoxUtils&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://expressionblend.codeplex.com/wikipage?title=PathListBoxUtils"&gt;Expression Samples - PathListBoxUtils Documentation&lt;/a&gt;  &lt;li&gt;&lt;a href="http://blogs.msdn.com/b/expression/archive/2010/06/07/creating-a-carousel-with-the-pathlistboxutils-sample.aspx"&gt;Creating a Carousel with the PathListBoxUtils Sample&lt;/a&gt;  &lt;li&gt;&lt;a href="http://microsoft.com/design/toolbox/tutorials/pathlistbox/carousel.aspx"&gt;Carousel tutorial&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;My examples&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;I have created five samples with PathListBox:&lt;/p&gt; &lt;p align="center"&gt;&lt;strong&gt;PathListBoxIntro&lt;/strong&gt;&lt;br&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TBleg93A-SI/AAAAAAAAApc/RiknGzJfCAQ/s1600-h/01_Intro_01%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_Intro_01" border="0" alt="01_Intro_01" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TBleqikT_CI/AAAAAAAAApg/VhfTJKs8_Lc/01_Intro_01_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TBlevjjb3BI/AAAAAAAAApk/xe4GZjxnaeQ/s1600-h/01_Intro_02%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_Intro_02" border="0" alt="01_Intro_02" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TBle2ENnQCI/AAAAAAAAApo/jTISqL44M0o/01_Intro_02_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TBlfRxFChrI/AAAAAAAAAps/Pg-viw4-lY8/s1600-h/01_Intro_03%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="01_Intro_03" border="0" alt="01_Intro_03" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TBlfYT3UXAI/AAAAAAAAApw/riypF6aOOso/01_Intro_03_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;  &lt;p align="center"&gt;&lt;strong&gt;MultiplePaths&lt;/strong&gt;&lt;br&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TBlfdgTGdYI/AAAAAAAAAp0/c9rVgAN9x08/s1600-h/02_MultiplePaths%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="02_MultiplePaths" border="0" alt="02_MultiplePaths" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TBlfkFR73uI/AAAAAAAAAp4/D3d2pYay0K0/02_MultiplePaths_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;strong&gt;MotionPath&lt;/strong&gt;&lt;br&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TBlfoEzyyYI/AAAAAAAAAp8/R3AQzNMPuzU/s1600-h/03_MotionPath%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="03_MotionPath" border="0" alt="03_MotionPath" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TBlfte5hKAI/AAAAAAAAAqA/eQ7JJ8QxFuQ/03_MotionPath_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;strong&gt;TextOnPath&lt;/strong&gt;&lt;br&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TBlfyN1sD1I/AAAAAAAAAqE/SLJoNTSG6No/s1600-h/04_TextOnPath%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="04_TextOnPath" border="0" alt="04_TextOnPath" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TBlf3AiHm3I/AAAAAAAAAqI/3kg9RDMzv9g/04_TextOnPath_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;strong&gt;PathListBoxItemDemo&lt;/strong&gt;&lt;br&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TBlf92hkjhI/AAAAAAAAAqM/KrsT_VvCuQQ/s1600-h/05_PathListBoxItem%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="05_PathListBoxItem" border="0" alt="05_PathListBoxItem" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TBlgFohYRGI/AAAAAAAAAqQ/Uf8Co27jPXE/05_PathListBoxItem_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TBlgLlbtE6I/AAAAAAAAAqU/lcpS2QcLXIw/s1600-h/05_PathListBoxItem_02%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="05_PathListBoxItem_02" border="0" alt="05_PathListBoxItem_02" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TBlgTIZqxwI/AAAAAAAAAqY/8UQ2nUQnhgc/05_PathListBoxItem_02_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;and I’ve tested &lt;a href="http://microsoft.com/design/toolbox/tutorials/pathlistbox/carousel.aspx"&gt;.toolbox carousel sample&lt;/a&gt; with &lt;a href="http://expressionblend.codeplex.com/releases/view/44915#DownloadId=120824"&gt;PathListBoxUtils&lt;/a&gt;:&lt;/p&gt; &lt;p align="center"&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TBlgY7UKQ3I/AAAAAAAAAqc/9q04D8VNonQ/s1600-h/06_PathListBoxUtils_01%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="06_PathListBoxUtils_01" border="0" alt="06_PathListBoxUtils_01" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TBlgfGrXgUI/AAAAAAAAAqg/SML6qK0xNx8/06_PathListBoxUtils_01_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TBlgkSDsQ-I/AAAAAAAAAqk/G6iCWSAx7ew/s1600-h/06_PathListBoxUtils_02%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="06_PathListBoxUtils_02" border="0" alt="06_PathListBoxUtils_02" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TBlgq-SrW_I/AAAAAAAAAqo/IycL-Yf2jfs/06_PathListBoxUtils_02_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TBlgvZhplYI/AAAAAAAAAqs/MFORBuPAN1Y/s1600-h/06_PathListBoxUtils_03%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="06_PathListBoxUtils_03" border="0" alt="06_PathListBoxUtils_03" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TBlg0oLn2gI/AAAAAAAAAqw/ZeWAY_2JsJM/06_PathListBoxUtils_03_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/Blend4/Blend4^_PathLayout.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-4267902263622009962?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/4267902263622009962/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=4267902263622009962' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4267902263622009962'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4267902263622009962'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/06/expression-blend-4-path-layout.html' title='Expression Blend 4: Path Layout'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_D_LHhy5fi8o/TBleqikT_CI/AAAAAAAAApg/VhfTJKs8_Lc/s72-c/01_Intro_01_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-2217732967054479061</id><published>2010-06-10T08:14:00.000+02:00</published><updated>2010-06-10T08:20:38.757+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MEF'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>My offline extension of DeploymentCatalog</title><content type='html'>&lt;p&gt;DeploymentCatalog works well in many scenarios. However, when you start&amp;nbsp; Silverlight out of browser application in offline, cached .xap is not found. So I have extended standard DeploymentCatalog to support offline scenario.&lt;/p&gt; &lt;p&gt;How my offline extension works? &lt;/p&gt; &lt;p&gt;In online out of browser application downloads (or gets from cache) .xap file and saves it&amp;nbsp; in an additional place - MyDocuments folder. I use trusted mode, so saving works without user interaction and space limit. &lt;/p&gt; &lt;p&gt;When you start out of browser application in offline, .xap file is loaded from MyDocuments folder. &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TBCCzgtHfBI/AAAAAAAAApI/aPxV7s4hbS0/s1600-h/MEF_Offline_Xap_2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MEF_Offline_Xap_2" border="0" alt="MEF_Offline_Xap_2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TBCC7LDA7QI/AAAAAAAAApM/VxEzf2UfO6E/MEF_Offline_Xap_2_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;I have created DeploymentCatalogWithOffline based on modified DeploymentCatalog sources.&amp;nbsp; I have changed only implementation of&amp;nbsp; HandleOpenReadCompleted method (see the screenshot below).&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TBCDBpY4VOI/AAAAAAAAApQ/4ot4cMoRUdc/s1600-h/MEF_Offline_Xap_1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MEF_Offline_Xap_1" border="0" alt="MEF_Offline_Xap_1" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TBCDIwygkZI/AAAAAAAAApY/3AUK3WtZmlk/MEF_Offline_Xap_1_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;You can download complete solution here.&lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/SL4/RTW/DeploymentCatalogWithOffline.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-2217732967054479061?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/2217732967054479061/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=2217732967054479061' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2217732967054479061'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2217732967054479061'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/06/my-offline-extension-of.html' title='My offline extension of DeploymentCatalog'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/TBCC7LDA7QI/AAAAAAAAApM/VxEzf2UfO6E/s72-c/MEF_Offline_Xap_2_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-7946010783281418892</id><published>2010-06-08T22:18:00.000+02:00</published><updated>2010-06-10T04:16:00.148+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MEF'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF Data Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='C# 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight Toolkit'/><category scheme='http://www.blogger.com/atom/ns#' term='OData'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>Silverlight 4 RTW Samples - part II</title><content type='html'>&lt;p&gt;I wrote &lt;a href="http://martinkruszynski.blogspot.com/2010/05/silverlight-4-rtw-samples-part-i.html"&gt;a post with part I of my Silverlight 4 RTW practical summary&lt;/a&gt; a&amp;nbsp; few days ago. Today I’ll continue this topic.&lt;/p&gt; &lt;p&gt;I sign changes in my samples:&amp;nbsp;&amp;nbsp; &lt;ul&gt; &lt;li&gt;&lt;font color="#ff8000"&gt;API changes or/and new features&lt;/font&gt;  &lt;li&gt;&lt;font color="#ff0000"&gt;new sample showing new features&lt;/font&gt;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Let’s continue …&lt;/p&gt; &lt;p&gt;9. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta-out.html"&gt;Out of browser applications - sandboxed&lt;/a&gt; (&lt;font color="#ff8000"&gt;SandboxedOutOfBrowser&lt;/font&gt;, &lt;a href="http://go.microsoft.com/?linkid=9728630"&gt;MultiTouchPuzzle&lt;/a&gt;)&lt;/p&gt; &lt;p&gt;Now you can &lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/NewFeatures/OutOfBrowser/Exercise-2-Signing-a-XAP-Assembly-and-Performing-Silent-Installations/"&gt;silent install out of browser application&lt;/a&gt; without … browser. You can also &lt;a href="http://msdn.microsoft.com/en-us/library/dd550721(VS.95).aspx#debugging_outofbrowser_applications"&gt;launch application without installing&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;10. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta-out_27.html"&gt;Out of browser applications - trusted&lt;/a&gt; (&lt;font color="#ff8000"&gt;TrustedOutBrowser&lt;/font&gt;)&lt;/p&gt; &lt;p&gt;Upon installation of an elevated trust application end user’s will be presented with dialogs shown below.&amp;nbsp; &lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/NewFeatures/OutOfBrowser/Exercise-2-Signing-a-XAP-Assembly-and-Performing-Silent-Installations/"&gt;XAP signing&lt;/a&gt; reassures end users of the authenticity of an application’s publisher and that the code has not been tampered with.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TBBIViVNhlI/AAAAAAAAAnk/8KDVmlLtspc/s1600-h/Trusted_OOB_WithoutSigning%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Trusted_OOB_WithoutSigning" border="0" alt="Trusted_OOB_WithoutSigning" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TBBIbFPDG1I/AAAAAAAAAno/Tn9cA7sZeuY/Trusted_OOB_WithoutSigning_thumb%5B3%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TBBIf-l2ClI/AAAAAAAAAns/7PV5n0glFwA/s1600-h/Trusted_OOB_WithSigning%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Trusted_OOB_WithSigning" border="0" alt="Trusted_OOB_WithSigning" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TBBIl6AwtkI/AAAAAAAAAnw/59VEeMoUGUI/Trusted_OOB_WithSigning_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;You should experiment with &lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/SL4BusinessModule8/SL4LOB_08_Advanced_OOB/Exercise-2-Custom-Window-Chrome/"&gt;custom window chrome&lt;/a&gt;! Your application may look more distinctive!&lt;/p&gt; &lt;p&gt;Silverlight 4 adds the ability to discover when an OOB application’s window is being closed. The &lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/SL4BusinessModule8/SL4LOB_08_Advanced_OOB/Exercise-3-Window-Closing-Event/"&gt;Closing event&lt;/a&gt; offers the opportunity to cancel this operation in trusted applications.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TBBIvjRx3xI/AAAAAAAAAn0/eGCrUO1O69U/s1600-h/Trusted_OOB_CustomChrome%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Trusted_OOB_CustomChrome" border="0" alt="Trusted_OOB_CustomChrome" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TBBI6QAjLuI/AAAAAAAAAoA/XceJAje-8TE/Trusted_OOB_CustomChrome_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;11. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_27.html"&gt;Implicit styles&lt;/a&gt; (ImplicitStylesDemo)&lt;/p&gt; &lt;p&gt;12. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_27.html"&gt;CompositeTransform&lt;/a&gt; (TransformDemo)&lt;/p&gt; &lt;p&gt;13. &lt;a href="http://martinkruszynski.blogspot.com/2010/01/new-features-in-silverlight-4-beta.html"&gt;MEF&lt;/a&gt; (&lt;font color="#ff8000"&gt;MEF&lt;/font&gt;, &lt;font color="#ff8000"&gt;MEF2&lt;/font&gt;, &lt;a href="http://mef.codeplex.com/releases/view/40606#DownloadId=106589"&gt;HousePlanner&lt;/a&gt;, &lt;a href="http://mef.codeplex.com/releases/view/40606#DownloadId=106589"&gt;ExtensibleGrid&lt;/a&gt;, &lt;a href="http://brad_abrams.members.winisp.net/Projects/Silverlight3RTM/SilverlightMEFNavigation.zip"&gt;SilverlightMEFNavigation&lt;/a&gt;)&lt;/p&gt; &lt;p&gt;MEF in final Silverlight 4 has &lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2010/02/17/new-mef-drop-preview-9-on-codeplex.aspx"&gt;some changes&lt;/a&gt; from beta. For example, it contains new DeploymentCatalog. &lt;/p&gt; &lt;p&gt;14. &lt;a href="http://martinkruszynski.blogspot.com/2010/01/new-features-in-silverlight-4-beta_16.html"&gt;Communication - multicast, authentication &amp;amp; WCF&lt;/a&gt; (&lt;a href="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=silverlightsdk&amp;amp;DownloadId=8369"&gt;MulticastChat&lt;/a&gt;, ClientHttpStackAuth, &lt;font color="#ff8000"&gt;WcfTcpBinding&lt;/font&gt;, &lt;font color="#ff8000"&gt;WcfDuplexTcpBinding&lt;/font&gt;, &lt;a href="http://blogs.msdn.com/b/silverlightws/archive/2010/03/17/two-samples-from-today-s-mix-2010-talk.aspx"&gt;VideoChat&lt;/a&gt;)&lt;/p&gt; &lt;p&gt;When using a service configured with NetTcp binding, Silverlight does not honor TCP policy served by the server at port 943. This is one of &lt;a href="http://blogs.msdn.com/b/silverlightws/archive/2010/04/04/some-known-wcf-issues-in-silverlight-4.aspx"&gt;some known WCF issues in Silverlight 4&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TBBJCeYTKNI/AAAAAAAAAoE/jNIiEge-LMk/s1600-h/WCF_Video_Chat%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="WCF_Video_Chat" border="0" alt="WCF_Video_Chat" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TBBJK2W1o0I/AAAAAAAAAoI/v4NR49gNIz4/WCF_Video_Chat_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;15. &lt;a href="http://martinkruszynski.blogspot.com/2010/01/new-features-in-silverlight-4-beta-wcf.html"&gt;Communication - WCF Data Services&lt;/a&gt; (&lt;font color="#ff8000"&gt;WcfDataServicesDemo&lt;/font&gt;, &lt;font color="#ff0000"&gt;BinaryDataStreamingDemo&lt;/font&gt;)&lt;/p&gt; &lt;p&gt;I have added demonstration of &lt;a href="http://msdn.microsoft.com/en-us/library/ee473424.aspx"&gt;server-driven paging&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/en-us/library/ee358709.aspx"&gt;partial entity sets&lt;/a&gt; to WcfDataServicesDemo example. &lt;/p&gt; &lt;p&gt;You can work more efficiently by using Visual Studio 2010 Data Sources window ! &lt;/p&gt; &lt;p&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="WCFDataServices_DataSourcesWindow" border="0" alt="WCFDataServices_DataSourcesWindow" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TBBJRRRrbDI/AAAAAAAAAoM/fXZWlkl5NXk/WCFDataServices_DataSourcesWindow_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/p&gt; &lt;p&gt;OData protocol defines a mechanism for accessing binary data separate from an entity to which it belongs. OData service can expose large binary data as a media resource that belongs to a media link entry. The WCF Data Services client for Silverlight can &lt;a href="http://msdn.microsoft.com/en-us/library/ff602281(VS.95).aspx"&gt;consume a media resource from an OData service as a binary stream&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/TBBJbeYZCiI/AAAAAAAAAoQ/nZH9-lhzrtE/s1600-h/WCFDataServices_BinaryStream1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="WCFDataServices_BinaryStream1" border="0" alt="WCFDataServices_BinaryStream1" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TBBJm_LQ-UI/AAAAAAAAAoU/vkpw99TvAKU/WCFDataServices_BinaryStream1_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TBBJtJknVNI/AAAAAAAAAoY/Afx2LTI4ohU/s1600-h/WCFDataServices_BinaryStream2%5B6%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="WCFDataServices_BinaryStream2" border="0" alt="WCFDataServices_BinaryStream2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TBBJ0eEIoJI/AAAAAAAAAoc/qr8AQ4-zWWk/WCFDataServices_BinaryStream2_thumb%5B2%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;16. XML - XPath (&lt;font color="#ff0000"&gt;XmlDemo&lt;/font&gt;)&lt;/p&gt; &lt;p&gt;Silverlight 4 RC/RTW introduces XPath support including &lt;a href="http://msdn.microsoft.com/en-us/library/system.xml.xpath.xpathnavigator(v=VS.96).aspx"&gt;XPathNavigator&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/en-us/library/system.xml.xpath.extensions_members(v=VS.96).aspx"&gt;LINQ to XML extension methods&lt;/a&gt; for evaluating XPath expressions on your XElement objects!&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TBBJ6F0bgDI/AAAAAAAAAog/M620X3f-APw/s1600-h/XmlXPath%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="XmlXPath" border="0" alt="XmlXPath" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TBBKAgcBUcI/AAAAAAAAAok/5JC7_UF578A/XmlXPath_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;17. &lt;a href="http://martinkruszynski.blogspot.com/2010/01/new-features-in-silverlight-4-beta-c-4.html"&gt;New C#4 &amp;amp; platform features&lt;/a&gt; (CSharp4, ModifyHTMLbyNET)&lt;/p&gt; &lt;p&gt;18. &lt;a href="http://martinkruszynski.blogspot.com/2010/01/new-features-in-silverlight-4-beta_24.html"&gt;ViewBox&lt;/a&gt; (ViewBoxDemo)&lt;/p&gt; &lt;p&gt;19. Toolkit - ContextMenu &amp;amp; Theming (&lt;font color="#ff0000"&gt;ThemesDemo&lt;/font&gt;)&lt;/p&gt; &lt;p&gt;Silverlight 4 Toolkit April '10 introduces &lt;a href="http://silverlight.codeplex.com/wikipage?title=Silverlight%20Toolkit%20April%202010%20change%20list&amp;amp;referringTitle=Home"&gt;some new features and changes&lt;/a&gt;.&amp;nbsp; &lt;/p&gt; &lt;p&gt;ThemesDemo example shows new SystemColors theme, using themes at application and page level, custom theme, changing themes at run-time with ContextMenu control. &lt;/p&gt; &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TBBKHI50v_I/AAAAAAAAAoo/lf7uZXUf0e8/s1600-h/Toolkit_Themes_App%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Toolkit_Themes_App" border="0" alt="Toolkit_Themes_App" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TBBKObRoJyI/AAAAAAAAAos/k35EBeEJ9v0/Toolkit_Themes_App_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TBBKWWFyTtI/AAAAAAAAAow/xaQRksGinH4/s1600-h/Toolkit_Themes_Menu_Changing%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Toolkit_Themes_Menu_Changing" border="0" alt="Toolkit_Themes_Menu_Changing" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TBBKfpJgvXI/AAAAAAAAAo0/5JkAQyKqJV0/Toolkit_Themes_Menu_Changing_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TBBKlaOO17I/AAAAAAAAAo4/mjuE3BBMmLA/s1600-h/Toolkit_Themes_Menu_Xaml%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Toolkit_Themes_Menu_Xaml" border="0" alt="Toolkit_Themes_Menu_Xaml" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TBBKsDv79OI/AAAAAAAAAo8/l01JYAo4WO0/Toolkit_Themes_Menu_Xaml_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TBBKw0E2M5I/AAAAAAAAApA/JtZTRx3ENc8/s1600-h/Toolkit_Themes_Menu_Code%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Toolkit_Themes_Menu_Code" border="0" alt="Toolkit_Themes_Menu_Code" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TBBK3ROlsVI/AAAAAAAAApE/ZB8WBI3zoa4/Toolkit_Themes_Menu_Code_thumb%5B1%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;All samples from part two you can download here&lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/SL4/RTW/SL4^_RTW^_Samples^_Part2.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt; &lt;p align="center"&gt;&amp;nbsp;&lt;/p&gt; &lt;p align="left"&gt;Silverlight 4 Tools for Visual Studio 2010 also contains some interesting features. See &lt;a href="http://channel9.msdn.com/shows/SilverlightTV/Silverlight-4-Tools-for-Visual-Studio-2010-Launch-New-Designer-Capabilities-Silverlight-TV-27/"&gt;great video&lt;/a&gt; on Silverlight TV!&amp;nbsp; &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-7946010783281418892?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/7946010783281418892/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=7946010783281418892' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7946010783281418892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7946010783281418892'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/06/silverlight-4-rtw-samples-part-ii.html' title='Silverlight 4 RTW Samples - part II'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_D_LHhy5fi8o/TBBIbFPDG1I/AAAAAAAAAno/Tn9cA7sZeuY/s72-c/Trusted_OOB_WithoutSigning_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-5133270243810693945</id><published>2010-05-28T07:07:00.000+02:00</published><updated>2010-06-09T09:46:39.211+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>Silverlight 4 RTW Samples - part I</title><content type='html'>&lt;p&gt;I have refreshed all my Silverlight 4 Beta samples to work with Silverlight 4 RTW.&amp;nbsp; I have also added demos of almost all new Silverlight 4 RC/RTW features. In addition, I have included some interesting samples I had found on the Web. In the near future I’ll write two posts with my summary of Silverlight 4 RTW features. Today I’ll present first part of&amp;nbsp; it . &lt;/p&gt; &lt;p&gt;I sign changes in my samples:&amp;nbsp;&amp;nbsp; &lt;ul&gt; &lt;li&gt;&lt;font color="#ff8000"&gt;API changes or/and new features&lt;/font&gt;  &lt;li&gt;&lt;font color="#ff0000"&gt;new sample showing new features&lt;/font&gt;&amp;nbsp;&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Let’s start ….&lt;/p&gt; &lt;p&gt;1. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta.html"&gt;Webcam &amp;amp; microphone&lt;/a&gt; (&lt;font color="#ff8000"&gt;WebcamMicSample&lt;/font&gt;, &lt;a href="http://facelight.codeplex.com/"&gt;FaceLight&lt;/a&gt;)&lt;/p&gt; &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TA9FQ1bGHxI/AAAAAAAAAmc/70AUifN28SY/s1600-h/mk-monkey%20-%20cl%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="mk-monkey - cl" border="0" alt="mk-monkey - cl" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TA9Fab2bDlI/AAAAAAAAAmg/7MRqsbBZEsA/mk-monkey%20-%20cl_thumb%5B3%5D.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;2. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta.html"&gt;Printing&lt;/a&gt; (&lt;font color="#ff8000"&gt;PrintingSample&lt;/font&gt;) &lt;/p&gt; &lt;p&gt;3. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_09.html"&gt;Dragging files &amp;amp; right click&lt;/a&gt; (DropFilesRightClickSample)&lt;/p&gt; &lt;p&gt;4. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_10.html"&gt;Mouse wheel, clipboard &amp;amp; DataGrid&lt;/a&gt; (ClipboardDataGrid)&lt;/p&gt; &lt;p&gt;5. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_11.html"&gt;Layout states - ListBoxItem&lt;/a&gt; (&lt;font color="#ff8000"&gt;ListBoxLayoutStatesExample&lt;/font&gt;)&lt;/p&gt; &lt;p&gt;6. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_16.html"&gt;Navigation extensibility&lt;/a&gt; (NavigationExtensibility)&lt;/p&gt; &lt;p&gt;7. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_16.html"&gt;Data binding&lt;/a&gt; (BindingValidation 1,&amp;nbsp; BindingValidation 2, &lt;font color="#ff0000"&gt;DesignBinding&lt;/font&gt;, &lt;font color="#ff0000"&gt;MasterDetailsDemo&lt;/font&gt;)&lt;/p&gt; &lt;p&gt;You should read about Silverlight &lt;a href="http://msdn.microsoft.com/en-us/library/ff602277(VS.95).aspx"&gt;design-time attributes&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/en-us/library/ff602279(VS.95).aspx"&gt;sample data&lt;/a&gt; in Visual Studio 2010. Now you can specify that the design instance is created from your type or a designer-generated substitute type.&lt;/p&gt; &lt;p&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Binding_Design_Designer" border="0" alt="Binding_Design_Designer" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TA9Ff8yk_xI/AAAAAAAAAmk/SaJU11qWKG4/Binding_Design_Designer_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TA9Fk6hOGLI/AAAAAAAAAmo/K_5L_ubf_Xg/s1600-h/Binding_Design_Data_15.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Binding_Design_Xaml1" border="0" alt="Binding_Design_Xaml1" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TA9FsbzcRNI/AAAAAAAAAms/Omj7PiQ5iJ0/Binding_Design_Xaml17.png?imgmax=800" width="644" height="484"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Binding_Design_Data_1" border="0" alt="Binding_Design_Data_1" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TA9FxqZo-QI/AAAAAAAAAmw/dRILF5Fb_BI/Binding_Design_Data_1_thumb3.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TA9F2XYhvmI/AAAAAAAAAm0/kZt4Ah9Q--k/s1600-h/Binding_Design_Data_23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Binding_Design_Data_2" border="0" alt="Binding_Design_Data_2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TA9F8CiCfAI/AAAAAAAAAm4/yArhW7boKMY/Binding_Design_Data_2_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;You should also read about &lt;a href="http://msdn.microsoft.com/en-us/library/cc645060(VS.95).aspx"&gt;master-details view with CollectionViewSource&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TA9GBR2bF3I/AAAAAAAAAm8/EdnamAWpvD4/s1600-h/Binding_MasterDetails_Designer5.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Binding_MasterDetails_Designer" border="0" alt="Binding_MasterDetails_Designer" src="http://lh6.ggpht.com/_D_LHhy5fi8o/TA9GIMQGhiI/AAAAAAAAAnA/EbFIz4rxqu0/Binding_MasterDetails_Designer_thumb.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TA9GOALOoBI/AAAAAAAAAnE/MlW70oy0EKg/s1600-h/Binding_MasterDetails_Xaml3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Binding_MasterDetails_Xaml" border="0" alt="Binding_MasterDetails_Xaml" src="http://lh3.ggpht.com/_D_LHhy5fi8o/TA9GVS3yhbI/AAAAAAAAAnI/lS_xVJT6X_0/Binding_MasterDetails_Xaml_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;8. &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_18.html"&gt;RichTextBox, RTL flow direction &amp;amp; text trimming&lt;/a&gt; (&lt;font color="#ff8000"&gt;RichTextAreaSample&lt;/font&gt;, &lt;a href="http://code.msdn.microsoft.com/Project/Download/FileDownload.aspx?ProjectName=silverlightsdk&amp;amp;DownloadId=9430"&gt;SilverlightTextEditor&lt;/a&gt;, TextTrimming)&lt;/p&gt; &lt;p&gt;Now you can &lt;a href="http://msdn.microsoft.com/en-us/library/ee681613(VS.95).aspx#selecting_text_at_run_time"&gt;traverse&lt;/a&gt; the content in a &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.richtextbox(VS.95).aspx"&gt;RichTextBox&lt;/a&gt; by using the &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.documents.textpointer(VS.95).aspx"&gt;TextPointer&lt;/a&gt; class. In my example, I select first word at run-time and change it’s foreground to red.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/TA9Gap8uh4I/AAAAAAAAAnM/6ZWlTndDW84/s1600-h/Text_Pointer_Selection5.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Text_Pointer_Selection" border="0" alt="Text_Pointer_Selection" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TA9Gg7BxNlI/AAAAAAAAAnQ/rcEB3GeTk0Q/Text_Pointer_Selection_thumb3.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt;You can also get and set a XAML representation of the content in a &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.richtextbox(VS.95).aspx"&gt;RichTextBox&lt;/a&gt; by using the &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.richtextbox.xaml(VS.95).aspx"&gt;Xaml&lt;/a&gt; property. Unfortunately, the XAML string returned by the &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.richtextbox.xaml(VS.95).aspx"&gt;Xaml&lt;/a&gt; property will not include any &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.uielement(VS.95).aspx"&gt;UIElement&lt;/a&gt; objects that are present in the content. The &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.documents.inlineuicontainer(VS.95).aspx"&gt;InlineUIContainer&lt;/a&gt; objects will be converted to empty &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.documents.run(VS.95).aspx"&gt;Run&lt;/a&gt; objects -:(&amp;nbsp; &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/TA9GmLHZsFI/AAAAAAAAAnU/DkKoEHtvcHw/s1600-h/Text_Xaml3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Text_Xaml" border="0" alt="Text_Xaml" src="http://lh5.ggpht.com/_D_LHhy5fi8o/TA9GsRqA47I/AAAAAAAAAnY/59LqZIuxf2A/Text_Xaml_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/TA9GwoKETHI/AAAAAAAAAnc/q2PcFcN4bJ4/s1600-h/Text_Xaml_From3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Text_Xaml_From" border="0" alt="Text_Xaml_From" src="http://lh4.ggpht.com/_D_LHhy5fi8o/TA9G1vcu-wI/AAAAAAAAAng/VstHLYN1QSs/Text_Xaml_From_thumb1.png?imgmax=800" width="644" height="484"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;All samples from part one you can download here &lt;/p&gt; &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.office.live.com/embedicon.aspx/Publiczny/SL4/RTW/SL4^_RTW^_Samples^_Part1.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-5133270243810693945?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/5133270243810693945/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=5133270243810693945' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5133270243810693945'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5133270243810693945'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/05/silverlight-4-rtw-samples-part-i.html' title='Silverlight 4 RTW Samples - part I'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_D_LHhy5fi8o/TA9Fab2bDlI/AAAAAAAAAmg/7MRqsbBZEsA/s72-c/mk-monkey%20-%20cl_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-2337859783399349805</id><published>2010-03-02T10:49:00.000+01:00</published><updated>2010-03-02T12:02:38.311+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WCF RIA Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>WCF RIA Services, Part V - WCF</title><content type='html'>&lt;p&gt;The current implementation of RIA Services is based on WCF. Now you can customize or extend domain services using WCF infrastructure. &lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/WcfDemo.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="left"&gt;Useful links:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3587" href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3587"&gt;http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3587&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3576" href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3576"&gt;http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3576&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/saurabh/archive/2009/11/23/understanding-the-wcf-in-wcf-ria-services.aspx" href="http://blogs.msdn.com/saurabh/archive/2009/11/23/understanding-the-wcf-in-wcf-ria-services.aspx"&gt;http://blogs.msdn.com/saurabh/archive/2009/11/23/understanding-the-wcf-in-wcf-ria-services.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/brada/archive/2009/11/22/ria-services-a-domainservice-is-a-wcf-service-add-service-reference.aspx" href="http://blogs.msdn.com/brada/archive/2009/11/22/ria-services-a-domainservice-is-a-wcf-service-add-service-reference.aspx"&gt;http://blogs.msdn.com/brada/archive/2009/11/22/ria-services-a-domainservice-is-a-wcf-service-add-service-reference.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-2337859783399349805?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/2337859783399349805/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=2337859783399349805' title='10 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2337859783399349805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2337859783399349805'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/03/wcf-ria-services-part-v-wcf.html' title='WCF RIA Services, Part V - WCF'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-6585760873260489900</id><published>2010-02-28T22:23:00.000+01:00</published><updated>2010-02-28T22:55:59.848+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WCF RIA Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>WCF RIA Services - Part IV, Presentation Models</title><content type='html'>&lt;p&gt;Presentation model aggregates data from multiple entities in the data access layer. It is useful when you do not want to directly expose the entities in your data access layer to the client.&lt;/p&gt;  &lt;p&gt;You should read these links:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/ee707347(VS.91).aspx" href="http://msdn.microsoft.com/en-us/library/ee707347(VS.91).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee707347(VS.91).aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/deepm/archive/2009/11/20/wcf-ria-services-presentation-model-explained.aspx" href="http://blogs.msdn.com/deepm/archive/2009/11/20/wcf-ria-services-presentation-model-explained.aspx"&gt;http://blogs.msdn.com/deepm/archive/2009/11/20/wcf-ria-services-presentation-model-explained.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I’ve implemented sample described &lt;a href="http://msdn.microsoft.com/en-us/library/ee707347(VS.91).aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/PresentationModelDemo.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-6585760873260489900?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/6585760873260489900/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=6585760873260489900' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/6585760873260489900'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/6585760873260489900'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/02/wcf-ria-services-part-iv-presentation.html' title='WCF RIA Services - Part IV, Presentation Models'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-3571085182109020830</id><published>2010-02-24T23:51:00.000+01:00</published><updated>2010-02-26T08:45:59.491+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WCF RIA Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>WCF RIA Services - Part III, Inheritance</title><content type='html'>&lt;p&gt;WCF RIA Services enables you to work with entities that are part of an inheritance hierarchy. This feature is supported only with Visual Studio 2010 and Silverlight 4.&lt;/p&gt;  &lt;p&gt;Useful links:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/ee707366(VS.91).aspx" href="http://msdn.microsoft.com/en-us/library/ee707366(VS.91).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee707366(VS.91).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3584" href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3584"&gt;http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3584&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://systemmetaphor.blogspot.com/2010/01/wcf-ria-services-using-inheritance.html" href="http://systemmetaphor.blogspot.com/2010/01/wcf-ria-services-using-inheritance.html"&gt;http://systemmetaphor.blogspot.com/2010/01/wcf-ria-services-using-inheritance.html&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://systemmetaphor.blogspot.com/2010/02/wcf-ria-services-advanced-topics-fully.html" href="http://systemmetaphor.blogspot.com/2010/02/wcf-ria-services-advanced-topics-fully.html"&gt;http://systemmetaphor.blogspot.com/2010/02/wcf-ria-services-advanced-topics-fully.html&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;My simple example (with entities from &lt;a href="http://mosesofegypt.net/post/Inheritance-and-Associations-with-Entity-Framework-Part-1.aspx"&gt;here&lt;/a&gt;):&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/S4d5rqHBKjI/AAAAAAAAAmU/FPldZndeu2k/s1600-h/Inheritance2%5B15%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px" title="Inheritance2" border="0" alt="Inheritance2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/S4d5u5RbOEI/AAAAAAAAAmY/L4sJCqby8SU/Inheritance2_thumb%5B8%5D.png?imgmax=800" width="640" height="448" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/InheritanceExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-3571085182109020830?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/3571085182109020830/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=3571085182109020830' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/3571085182109020830'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/3571085182109020830'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/02/wcf-ria-services-part-iii-inheritance.html' title='WCF RIA Services - Part III, Inheritance'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/S4d5u5RbOEI/AAAAAAAAAmY/L4sJCqby8SU/s72-c/Inheritance2_thumb%5B8%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-7990974736885839345</id><published>2010-02-22T20:37:00.000+01:00</published><updated>2010-02-23T00:56:57.996+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WCF RIA Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>WCF RIA Services - Part II, Compositional Hierarchies</title><content type='html'>&lt;p&gt;Compositional hierarchy is very useful for people who need real parent/child hierarchies. &lt;/p&gt;  &lt;p&gt;You can read about this new feature here:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/ee707346(VS.91).aspx" href="http://msdn.microsoft.com/en-us/library/ee707346(VS.91).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee707346(VS.91).aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/digital_ruminations/archive/2009/11/18/composition-support-in-ria-services.aspx" href="http://blogs.msdn.com/digital_ruminations/archive/2009/11/18/composition-support-in-ria-services.aspx"&gt;http://blogs.msdn.com/digital_ruminations/archive/2009/11/18/composition-support-in-ria-services.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.riaservicesblog.net/Blog/post/A-guide-to-the-new-features-of-WCF-RIA-Services.aspx" href="http://www.riaservicesblog.net/Blog/post/A-guide-to-the-new-features-of-WCF-RIA-Services.aspx"&gt;http://www.riaservicesblog.net/Blog/post/A-guide-to-the-new-features-of-WCF-RIA-Services.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/CompositionExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-7990974736885839345?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/7990974736885839345/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=7990974736885839345' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7990974736885839345'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7990974736885839345'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/02/wcf-ria-services-part-ii-compositional.html' title='WCF RIA Services - Part II, Compositional Hierarchies'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-8588201640676898092</id><published>2010-02-18T23:35:00.000+01:00</published><updated>2010-02-19T09:21:17.070+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Visual Studio 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF RIA Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>WCF RIA Services - Part I, changes in features known from previous releases &amp; design tools</title><content type='html'>&lt;p&gt;I wrote &lt;a href="http://martinkruszynski.blogspot.com/2009/10/my-longest-post-net-ria-services-july.html"&gt;a very long post about .NET Ria Services with 20 samples&lt;/a&gt; four months ago. In this series of posts I’ll describe WCF RIA Services presented at PDC. In this post, I’ll present 9 updated samples and VS 2010 design tools. &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Business Application Demo&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/S35HQjyAlEI/AAAAAAAAAkM/yx8lKWh_1HI/s1600-h/App29.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="App2" border="0" alt="App2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/S35HWHMWyQI/AAAAAAAAAkQ/NIH2nhLNszI/App2_thumb5.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/S35HbG41yUI/AAAAAAAAAkU/64oaU9-DqV4/s1600-h/App37.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="App3" border="0" alt="App3" src="http://lh6.ggpht.com/_D_LHhy5fi8o/S35Hgt_pUrI/AAAAAAAAAkY/WCdaLUmaojE/App3_thumb3.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/S35HmG0zNCI/AAAAAAAAAkc/LZxU_7lneWM/s1600-h/App43.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="App4" border="0" alt="App4" src="http://lh6.ggpht.com/_D_LHhy5fi8o/S35Hr_HYrvI/AAAAAAAAAkg/V6ewoT-xNB8/App4_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;font color="#ff8000"&gt;Silverlight Business Applications: Design tools&lt;/font&gt;&amp;#160; &lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/S35HxjevwcI/AAAAAAAAAkk/g7KGfTq6RHU/s1600-h/SelectQuery27.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SelectQuery2" border="0" alt="SelectQuery2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/S35H4hVIr2I/AAAAAAAAAko/2jg70dKTDto/SelectQuery2_thumb3.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;font color="#ff8000"&gt;Data Sources Window: Query selection&lt;/font&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/S35H-QcY9zI/AAAAAAAAAks/z2afV3ND9Lc/s1600-h/ConfigFields23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="ConfigFields2" border="0" alt="ConfigFields2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/S35IFAEykbI/AAAAAAAAAkw/Wk1WUoEt-H4/ConfigFields2_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;font color="#ff8000"&gt;Data Sources Window: Control selection&lt;/font&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/S35ILLMdy0I/AAAAAAAAAk0/O038kEHHdAg/s1600-h/Main3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Main" border="0" alt="Main" src="http://lh4.ggpht.com/_D_LHhy5fi8o/S35IR5JqCjI/AAAAAAAAAk4/ScX5aYRQ72M/Main_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;font color="#ff8000"&gt;Dragging the Product node to the designer (query with parameters)&lt;/font&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/S35IX-gvc0I/AAAAAAAAAk8/gxs9zeW-Sp8/s1600-h/DataPager3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="DataPager" border="0" alt="DataPager" src="http://lh6.ggpht.com/_D_LHhy5fi8o/S35IfXomctI/AAAAAAAAAlA/iGPtsFkOd7E/DataPager_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;font color="#ff8000"&gt;Dragging the Product node onto the DataPager&lt;/font&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/S35IkXglAuI/AAAAAAAAAlE/TVICuuWUung/s1600-h/Details3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Details" border="0" alt="Details" src="http://lh5.ggpht.com/_D_LHhy5fi8o/S35Iqrw8IgI/AAAAAAAAAlI/Jc7qCK2aC_Y/Details_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;font color="#ff8000"&gt;Data Sources Window: Details mode selection&lt;/font&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/S35IwltyCTI/AAAAAAAAAlM/coktsgvGThQ/s1600-h/Details23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Details2" border="0" alt="Details2" src="http://lh3.ggpht.com/_D_LHhy5fi8o/S35I3euTMsI/AAAAAAAAAlQ/PBCVvlnM7zY/Details2_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;font color="#ff8000"&gt;Dragging the Product node to the designer (Details mode)&lt;/font&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/S35I8zl7_dI/AAAAAAAAAlU/Rw2BsmJ-N4w/s1600-h/Customize13.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Customize1" border="0" alt="Customize1" src="http://lh3.ggpht.com/_D_LHhy5fi8o/S35JDn9y3tI/AAAAAAAAAlY/YZvsi6GX5z0/Customize1_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/S35JJ81e0XI/AAAAAAAAAlc/CE2cqh-Rcaw/s1600-h/Customize23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Customize2" border="0" alt="Customize2" src="http://lh3.ggpht.com/_D_LHhy5fi8o/S35JRdPXZjI/AAAAAAAAAlg/DLSUpcpbioA/Customize2_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/S35JXAzDkQI/AAAAAAAAAlk/2s4eO_9ffb4/s1600-h/Customize35.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Customize3" border="0" alt="Customize3" src="http://lh3.ggpht.com/_D_LHhy5fi8o/S35Jd1bh5II/AAAAAAAAAlo/7xlsUqg8m7s/Customize3_thumb3.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;font color="#ff8000"&gt;Data Sources Window: Custom control selection&lt;/font&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/S35Jj4g3SVI/AAAAAAAAAls/PKxVogu3hNo/s1600-h/Customize43.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Customize4" border="0" alt="Customize4" src="http://lh4.ggpht.com/_D_LHhy5fi8o/S35Jq_X6hOI/AAAAAAAAAlw/ewSBT16RzF8/Customize4_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;font color="#ff8000"&gt;Dragging the User node to the designer (Details mode, custom control)&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/BusinessApplicationDemo.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&amp;#160;&lt;/p&gt;  &lt;p align="center"&gt;&amp;#160;&lt;strong&gt;Server validation &amp;amp;&amp;#160; resolving concurrency conflicts &lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/ConflictsExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&amp;#160;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Windows Authentication&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/WindowsAuthentication.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&amp;#160;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;A Https Enabled DomainService&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/HttpsExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&amp;#160;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;DomainContext: cross-domain scenario&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/CrossDomainExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&amp;#160;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Loading Data from Related Entities&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;font color="#ff8000"&gt;Silverlight Business Applications: Design tools&lt;/font&gt;&amp;#160; &lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/S35JvTkux7I/AAAAAAAAAl4/XQrwSmDt7Y0/s1600-h/Related13.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Related1" border="0" alt="Related1" src="http://lh3.ggpht.com/_D_LHhy5fi8o/S35J0v-i6HI/AAAAAAAAAl8/ph0jdXhtBHE/Related1_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/S35J5AG3jMI/AAAAAAAAAmA/OeLoQ4v8mZ4/s1600-h/Related23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Related2" border="0" alt="Related2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/S35J-uHNKPI/AAAAAAAAAmE/Hn74SARQ8hw/Related2_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;font color="#ff8000"&gt;Dragging the Products node (the child node of the Category node) to the designer&lt;/font&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/RelatedEntitiesDemo.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Multiple DomainContexts&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/MultipleDomainContextsExamples.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;WCF RIA Services Class Libraries&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/RIAServicesLibrariesDemo.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;ASP.NET Dynamic Data integration&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/WCF^_RIA^_VS2010^_Prev/ASPNetDynamicDataExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Other useful samples I have found&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2390"&gt;POCO&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Authentication      &lt;ul&gt;       &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2661"&gt;Custom authentication service&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2661"&gt;Offline Authentication&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3714"&gt;AuthenticationService in RIAServicesClassLibrary&lt;/a&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2807"&gt;Repository pattern&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2659"&gt;Custom Metadata Provider&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2660"&gt;Custom Domain Service Type&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=3548"&gt;Hosting in Azure&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/CL07" href="http://microsoftpdc.com/Sessions/CL07"&gt;http://microsoftpdc.com/Sessions/CL07&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/CL21" href="http://microsoftpdc.com/Sessions/CL21"&gt;http://microsoftpdc.com/Sessions/CL21&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/CL19" href="http://microsoftpdc.com/Sessions/CL19"&gt;http://microsoftpdc.com/Sessions/CL19&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/ria-services-support-visual-studio-2010/" href="http://silverlight.net/learn/videos/all/ria-services-support-visual-studio-2010/"&gt;http://silverlight.net/learn/videos/all/ria-services-support-visual-studio-2010/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/ee707344(VS.91).aspx" href="http://msdn.microsoft.com/en-us/library/ee707344(VS.91).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee707344(VS.91).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://code.msdn.microsoft.com/RiaServices" href="http://code.msdn.microsoft.com/RiaServices"&gt;http://code.msdn.microsoft.com/RiaServices&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/brada/" href="http://blogs.msdn.com/brada/"&gt;http://blogs.msdn.com/brada/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://jeffhandley.com/" href="http://jeffhandley.com/"&gt;http://jeffhandley.com/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.nikhilk.net/" href="http://www.nikhilk.net/"&gt;http://www.nikhilk.net/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://timheuer.com/" href="http://timheuer.com/"&gt;http://timheuer.com/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://weblogs.asp.net/fredriknormen/" href="http://weblogs.asp.net/fredriknormen/"&gt;http://weblogs.asp.net/fredriknormen/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.riaservicesblog.net/Blog/" href="http://www.riaservicesblog.net/Blog/"&gt;http://www.riaservicesblog.net/Blog/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/digital_ruminations/" href="http://blogs.msdn.com/digital_ruminations/"&gt;http://blogs.msdn.com/digital_ruminations/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/vsdata/" href="http://blogs.msdn.com/vsdata/"&gt;http://blogs.msdn.com/vsdata/&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-8588201640676898092?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/8588201640676898092/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=8588201640676898092' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8588201640676898092'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8588201640676898092'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/02/wcf-ria-services-part-i-changes-in.html' title='WCF RIA Services - Part I, changes in features known from previous releases &amp;amp; design tools'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/S35HWHMWyQI/AAAAAAAAAkQ/NIH2nhLNszI/s72-c/App2_thumb5.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-5374022206839830010</id><published>2010-01-24T20:31:00.000+01:00</published><updated>2010-01-25T00:28:24.800+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 4 Beta: Viewbox</title><content type='html'>&lt;p&gt;&lt;em&gt;Viewbox &lt;/em&gt;has been around in WPF since version 1 and it’s also part of the Silverlight Toolkit. It’s also in runtime of Silverlight 4 Beta.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/S1zXMCIuGqI/AAAAAAAAAkA/_ZKcTlcKfZ4/s1600-h/viewbox2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="viewbox2" border="0" alt="viewbox2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/S1zXOu1rQ-I/AAAAAAAAAkE/mgn8HWJAexE/viewbox2_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/ViewBoxDemo.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/using-the-viewbox-control/" href="http://silverlight.net/learn/videos/all/using-the-viewbox-control/"&gt;http://silverlight.net/learn/videos/all/using-the-viewbox-control/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/" href="http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/system.windows.controls.viewbox(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/system.windows.controls.viewbox(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.windows.controls.viewbox(VS.96).aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-viewbox.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-viewbox.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-viewbox.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-5374022206839830010?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/5374022206839830010/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=5374022206839830010' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5374022206839830010'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5374022206839830010'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/01/new-features-in-silverlight-4-beta_24.html' title='New features in Silverlight 4 Beta: Viewbox'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/S1zXOu1rQ-I/AAAAAAAAAkE/mgn8HWJAexE/s72-c/viewbox2_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-5533443352961682605</id><published>2010-01-23T19:52:00.000+01:00</published><updated>2010-01-24T23:23:34.489+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='C# 4'/><title type='text'>New features in Silverlight 4 Beta: C# 4 &amp; Sharing Assemblies with .NET Apps</title><content type='html'>&lt;p&gt;Have you tried to use new C# 4 features in Silverlight 4 Beta ? Read this post.&lt;/p&gt;  &lt;p&gt;I’ve made Silverlight sample (&lt;em&gt;CSharp4&lt;/em&gt;) to demonstrate new C# 4 features and new BCL types&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd772166(VS.96).aspx#support_for_dynamic_type"&gt;Dynamic Binding&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd264739(VS.100).aspx"&gt;Named and Optional Arguments&lt;/a&gt;&amp;#160; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd772166(VS.96).aspx#tuples"&gt;Tuples&lt;/a&gt; &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;Silverlight 4 has also changes in &lt;a href="http://msdn.microsoft.com/en-us/library/dd772166(VS.96).aspx#collection_sets"&gt;Collection Sets&lt;/a&gt; and &lt;a href="http://msdn.microsoft.com/en-us/library/dd772166(VS.96).aspx#parsing_and_formatting_time_intervals"&gt;parsing and formatting time intervals&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/dd799517(VS.100).aspx"&gt;Covariance and contravariance&lt;/a&gt; don’t work in Silverlight 4 Beta (I have tested it – you can’t compile code with variance). &lt;/p&gt;  &lt;p&gt;I’ve built second Silverlight example (&lt;em&gt;ModifyHTMLbyNET&lt;/em&gt;) to show HTML /JavaScript integration with&amp;#160; &lt;em&gt;dynamic&lt;/em&gt; type. &lt;/p&gt;  &lt;p&gt;Both samples you can download below.&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/CSharp4.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Dynamic&lt;/em&gt; type is very useful for &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta-out_27.html"&gt;native integration (COM)&lt;/a&gt;, too.&lt;/p&gt;  &lt;p&gt;You can read about sharing Silverlight assemblies with .NET &lt;a href="http://karlshifflett.wordpress.com/2009/11/19/silverlight-3-4-library-sharing-with-net-4-0-library-or-wpf/"&gt;here&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/clrteam/archive/2009/12/01/sharing-silverlight-assemblies-with-net-apps.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/FT11" href="http://microsoftpdc.com/Sessions/FT11"&gt;http://microsoftpdc.com/Sessions/FT11&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/FT31" href="http://microsoftpdc.com/Sessions/FT31"&gt;http://microsoftpdc.com/Sessions/FT31&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/pdc2008/TL16/" href="http://channel9.msdn.com/pdc2008/TL16/"&gt;http://channel9.msdn.com/pdc2008/TL16/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/pdc2008/TL54/" href="http://channel9.msdn.com/pdc2008/TL54/"&gt;http://channel9.msdn.com/pdc2008/TL54/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/pdc2008/PC49/" href="http://channel9.msdn.com/pdc2008/PC49/"&gt;http://channel9.msdn.com/pdc2008/PC49/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://code.msdn.microsoft.com/csharpfuture" href="http://code.msdn.microsoft.com/csharpfuture"&gt;http://code.msdn.microsoft.com/csharpfuture&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/dd772166(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/dd772166(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd772166(VS.96).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/dd264736(VS.100).aspx" href="http://msdn.microsoft.com/en-us/library/dd264736(VS.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd264736(VS.100).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/dd264741(VS.100).aspx" href="http://msdn.microsoft.com/en-us/library/dd264741(VS.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd264741(VS.100).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/system.dynamic.dynamicobject(VS.100).aspx" href="http://msdn.microsoft.com/en-us/library/system.dynamic.dynamicobject(VS.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.dynamic.dynamicobject(VS.100).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/system.dynamic.expandoobject(VS.100).aspx" href="http://msdn.microsoft.com/en-us/library/system.dynamic.expandoobject(VS.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.dynamic.expandoobject(VS.100).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/dd233052(VS.100).aspx" href="http://msdn.microsoft.com/en-us/library/dd233052(VS.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd233052(VS.100).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/dd264739(VS.100).aspx" href="http://msdn.microsoft.com/en-us/library/dd264739(VS.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd264739(VS.100).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/dd799517(VS.100).aspx" href="http://msdn.microsoft.com/en-us/library/dd799517(VS.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd799517(VS.100).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-html-interop-amp-dynamic-language-features.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-html-interop-amp-dynamic-language-features.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-html-interop-amp-dynamic-language-features.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/vcsharp/ee957397.aspx" href="http://msdn.microsoft.com/en-us/vcsharp/ee957397.aspx"&gt;http://msdn.microsoft.com/en-us/vcsharp/ee957397.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://karlshifflett.wordpress.com/2009/11/19/silverlight-3-4-library-sharing-with-net-4-0-library-or-wpf/" href="http://karlshifflett.wordpress.com/2009/11/19/silverlight-3-4-library-sharing-with-net-4-0-library-or-wpf/"&gt;http://karlshifflett.wordpress.com/2009/11/19/silverlight-3-4-library-sharing-with-net-4-0-library-or-wpf/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/clrteam/archive/2009/12/01/sharing-silverlight-assemblies-with-net-apps.aspx" href="http://blogs.msdn.com/clrteam/archive/2009/12/01/sharing-silverlight-assemblies-with-net-apps.aspx"&gt;http://blogs.msdn.com/clrteam/archive/2009/12/01/sharing-silverlight-assemblies-with-net-apps.aspx&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-5533443352961682605?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/5533443352961682605/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=5533443352961682605' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5533443352961682605'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5533443352961682605'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/01/new-features-in-silverlight-4-beta-c-4.html' title='New features in Silverlight 4 Beta: C# 4 &amp;amp; Sharing Assemblies with .NET Apps'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-4087010162598296079</id><published>2010-01-19T21:57:00.000+01:00</published><updated>2010-01-20T01:33:27.977+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WCF Data Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='ADO.NET Data Services'/><category scheme='http://www.blogger.com/atom/ns#' term='OData'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>New features in Silverlight 4 Beta: WCF Data Services</title><content type='html'>&lt;p&gt;ADO.NET Data Services has changed its name to WCF Data Services. Today I’ll write about consuming these data services from Silverlight 4 Beta client.&lt;/p&gt;  &lt;p&gt;I have created Silverlight 4 application consuming .NET 4.0 WCF Data Service in x-domain scenario (which is supported in updated data services). Silverlight 4 client library includes most of the new features previewed in the &lt;a href="http://blogs.msdn.com/astoriateam/archive/2009/08/31/ado-net-data-services-v1-5-ctp2-now-available-for-download.aspx"&gt;ADO.NET Data Services CTP2&lt;/a&gt;.&amp;#160; Using the Visual Studio 2010 Beta 2 &lt;em&gt;Add Service Reference&lt;/em&gt; feature with the Silverlight 4.0 Beta requires &lt;a href="http://blogs.msdn.com/astoriateam/archive/2009/12/01/using-the-silverlight-4-0-wcf-data-services-client-library.aspx"&gt;a few extra steps&lt;/a&gt; from the normal process. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/S1ZPOqGuu4I/AAAAAAAAAj0/VURV4TevpgY/s1600-h/OData%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="OData" border="0" alt="OData" src="http://lh6.ggpht.com/_D_LHhy5fi8o/S1ZPVp39srI/AAAAAAAAAj4/ZfY6jsVyiss/OData_thumb%5B1%5D.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/Communication^_v2.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/astoriateam/archive/2009/11/17/introducing-the-microsoft-open-data-protocol-visualizer.aspx"&gt;The Open Data Protocol Visualizer for Visual Studio CTP1&lt;/a&gt;&amp;#160; (see screenshot above)&amp;#160; provides a read-only visualization of the types, properties, associations, and other objects in the &lt;a href="http://msdn.microsoft.com/en-us/library/bb387122.aspx"&gt;Entity Data Model (EDM)&lt;/a&gt; returned from an &lt;a href="http://msdn.microsoft.com/en-us/library/cc716656.aspx"&gt;Open Data Protocol’s metadata endpoint&lt;/a&gt;. You can download and install it using &lt;em&gt;Extension Manager&lt;/em&gt;. &lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/CL06"&gt;http://microsoftpdc.com/Sessions/CL06&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/silverlightws/archive/2009/12/18/pdc-presentation-and-demo.aspx"&gt;http://blogs.msdn.com/silverlightws/archive/2009/12/18/pdc-presentation-and-demo.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/cc838234(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/cc838234(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/cc838234(VS.96).aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://code.msdn.microsoft.com/AstoriaDocSamples" href="http://code.msdn.microsoft.com/AstoriaDocSamples"&gt;http://code.msdn.microsoft.com/AstoriaDocSamples&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/" href="http://blogs.msdn.com/astoriateam/"&gt;http://blogs.msdn.com/astoriateam/&lt;/a&gt;&lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/08/31/ado-net-data-services-v1-5-ctp2-now-available-for-download.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/08/31/ado-net-data-services-v1-5-ctp2-now-available-for-download.aspx"&gt;http://blogs.msdn.com/astoriateam/archive/2009/08/31/ado-net-data-services-v1-5-ctp2-now-available-for-download.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/09/01/customizable-feed-support-in-ctp2.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/09/01/customizable-feed-support-in-ctp2.aspx"&gt;http://blogs.msdn.com/astoriateam/archive/2009/09/01/customizable-feed-support-in-ctp2.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/09/01/ado-net-data-services-v1-5-ctp2-projections-overview-server.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/09/01/ado-net-data-services-v1-5-ctp2-projections-overview-server.aspx"&gt;http://blogs.msdn.com/astoriateam/archive/2009/09/01/ado-net-data-services-v1-5-ctp2-projections-overview-server.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/09/01/introduction-to-data-binding-in-ctp2.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/09/01/introduction-to-data-binding-in-ctp2.aspx"&gt;http://blogs.msdn.com/astoriateam/archive/2009/09/01/introduction-to-data-binding-in-ctp2.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/09/03/using-the-ado-net-data-services-silverlight-client-in-x-domain-and-out-of-browser-scenarios-i.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/09/03/using-the-ado-net-data-services-silverlight-client-in-x-domain-and-out-of-browser-scenarios-i.aspx"&gt;http://blogs.msdn.com/astoriateam/archive/2009/09/03/using-the-ado-net-data-services-silverlight-client-in-x-domain-and-out-of-browser-scenarios-i.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/09/10/more-on-using-data-services-silverlight-3-in-xdomain-out-of-browser-scenarios.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/09/10/more-on-using-data-services-silverlight-3-in-xdomain-out-of-browser-scenarios.aspx"&gt;http://blogs.msdn.com/astoriateam/archive/2009/09/10/more-on-using-data-services-silverlight-3-in-xdomain-out-of-browser-scenarios.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/10/19/share-your-data-across-data-sources-sharepoint-sql-server-azure-reporting-services-etc-applications-net-silverlight-excel-etc-using-data-services.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/10/19/share-your-data-across-data-sources-sharepoint-sql-server-azure-reporting-services-etc-applications-net-silverlight-excel-etc-using-data-services.aspx"&gt;http://blogs.msdn.com/astoriateam/archive/2009/10/19/share-your-data-across-data-sources-sharepoint-sql-server-azure-reporting-services-etc-applications-net-silverlight-excel-etc-using-data-services.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/11/17/breaking-down-data-silos-the-open-data-protocol-odata.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/11/17/breaking-down-data-silos-the-open-data-protocol-odata.aspx"&gt;http://blogs.msdn.com/astoriateam/archive/2009/11/17/breaking-down-data-silos-the-open-data-protocol-odata.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/11/17/introducing-the-microsoft-open-data-protocol-visualizer.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/11/17/introducing-the-microsoft-open-data-protocol-visualizer.aspx"&gt;http://blogs.msdn.com/astoriateam/archive/2009/11/17/introducing-the-microsoft-open-data-protocol-visualizer.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/11/25/data-services-release-plan-update.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/11/25/data-services-release-plan-update.aspx"&gt;http://blogs.msdn.com/astoriateam/archive/2009/11/25/data-services-release-plan-update.aspx&lt;/a&gt;&lt;/li&gt;      &lt;li&gt;&lt;a title="http://blogs.msdn.com/astoriateam/archive/2009/12/01/using-the-silverlight-4-0-wcf-data-services-client-library.aspx" href="http://blogs.msdn.com/astoriateam/archive/2009/12/01/using-the-silverlight-4-0-wcf-data-services-client-library.aspx"&gt;http://blogs.msdn.com/astoriateam/archive/2009/12/01/using-the-silverlight-4-0-wcf-data-services-client-library.aspx&lt;/a&gt;&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/FT12" href="http://microsoftpdc.com/Sessions/FT12"&gt;http://microsoftpdc.com/Sessions/FT12&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/FT55" href="http://microsoftpdc.com/Sessions/FT55"&gt;http://microsoftpdc.com/Sessions/FT55&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-4087010162598296079?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/4087010162598296079/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=4087010162598296079' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4087010162598296079'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4087010162598296079'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/01/new-features-in-silverlight-4-beta-wcf.html' title='New features in Silverlight 4 Beta: WCF Data Services'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/S1ZPVp39srI/AAAAAAAAAj4/ZfY6jsVyiss/s72-c/OData_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-8064603334269682782</id><published>2010-01-16T19:20:00.000+01:00</published><updated>2010-01-17T22:25:16.538+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='WCF'/><title type='text'>New features in Silverlight 4 Beta: Multicast, Authentication, WCF</title><content type='html'>&lt;p&gt;This post will be about some new communication features in Silverlight 4.&amp;#160; In the coming days I’ll write about frameworks built on top of WCF:&amp;#160; WCF Data Services (formerly ADO.NET Data Services) and WCF RIA Services (formerly .NET RIA Services).&lt;/p&gt;  &lt;p&gt;What’s new? &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a name="_Toc245894067"&gt;UDP Multicast Client Support&lt;/a&gt; (&lt;em&gt;UdpSingleSourceMulticastClient&lt;/em&gt; and &lt;em&gt;UdpAnySourceMulticastClient&lt;/em&gt;) &lt;/li&gt;    &lt;li&gt;Client Http Stack: Authentication Support (Basic, Digest, NTLM) &lt;/li&gt;    &lt;li&gt;Trusted Applications: &lt;a name="_Toc245894098"&gt;Cross-Domain Networking Access&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;WCF: .net.tcp protocol (&lt;em&gt;NetTcpBinding&lt;/em&gt;) &lt;/li&gt;    &lt;li&gt;&lt;a name="_Toc245894066"&gt;Support for Referer Header&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a name="_Toc245894088"&gt;WMS Multicast&lt;/a&gt; (&lt;em&gt;MediaElement&lt;/em&gt;) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I have tested multicast, client http stack authentication and WCF &lt;em&gt;NetTcpBinding&lt;/em&gt; (from client to server and duplex). You can download sources below.&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/Communication^_v1.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;I had some problems to get IIS configured to use Net.TCP.&amp;#160; Mike had written &lt;a href="http://42spikes.com/post/Using-Silverlight-4-and-NetTCP-Duplex-Callbacks.aspx"&gt;an excellent post&lt;/a&gt; about using WCF &lt;em&gt;NetTcpBinding&lt;/em&gt; with Silverlight 4. You should read it.&lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/CL06" href="http://microsoftpdc.com/Sessions/CL06"&gt;http://microsoftpdc.com/Sessions/CL06&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/silverlightws/archive/2009/12/18/pdc-presentation-and-demo.aspx" href="http://blogs.msdn.com/silverlightws/archive/2009/12/18/pdc-presentation-and-demo.aspx"&gt;http://blogs.msdn.com/silverlightws/archive/2009/12/18/pdc-presentation-and-demo.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/silverlightws/archive/2009/11/18/new-web-services-features-in-silverlight-4-beta.aspx" href="http://blogs.msdn.com/silverlightws/archive/2009/11/18/new-web-services-features-in-silverlight-4-beta.aspx"&gt;http://blogs.msdn.com/silverlightws/archive/2009/11/18/new-web-services-features-in-silverlight-4-beta.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/ncl/archive/2009/11/18/udp-multicast-in-silverlight-4.aspx" href="http://blogs.msdn.com/ncl/archive/2009/11/18/udp-multicast-in-silverlight-4.aspx"&gt;http://blogs.msdn.com/ncl/archive/2009/11/18/udp-multicast-in-silverlight-4.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://code.msdn.microsoft.com/silverlightsdk" href="http://code.msdn.microsoft.com/silverlightsdk"&gt;http://code.msdn.microsoft.com/silverlightsdk&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/ee707325(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/ee707325(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee707325(VS.96).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/network-authentication-trusted-network-access/" href="http://silverlight.net/learn/videos/all/network-authentication-trusted-network-access/"&gt;http://silverlight.net/learn/videos/all/network-authentication-trusted-network-access/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/ee721083(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/ee721083(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee721083(VS.96).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://tomasz.janczuk.org/2009/11/wcf-nettcp-protocol-in-silverlight-4.html" href="http://tomasz.janczuk.org/2009/11/wcf-nettcp-protocol-in-silverlight-4.html"&gt;http://tomasz.janczuk.org/2009/11/wcf-nettcp-protocol-in-silverlight-4.html&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://tomasz.janczuk.org/2009/11/pubsub-sample-with-wcf-nettcp-protocol.html" href="http://tomasz.janczuk.org/2009/11/pubsub-sample-with-wcf-nettcp-protocol.html"&gt;http://tomasz.janczuk.org/2009/11/pubsub-sample-with-wcf-nettcp-protocol.html&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://42spikes.com/post/Using-Silverlight-4-and-NetTCP-Duplex-Callbacks.aspx" href="http://42spikes.com/post/Using-Silverlight-4-and-NetTCP-Duplex-Callbacks.aspx"&gt;http://42spikes.com/post/Using-Silverlight-4-and-NetTCP-Duplex-Callbacks.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-8064603334269682782?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/8064603334269682782/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=8064603334269682782' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8064603334269682782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8064603334269682782'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/01/new-features-in-silverlight-4-beta_16.html' title='New features in Silverlight 4 Beta: Multicast, Authentication, WCF'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-8315547454062643689</id><published>2010-01-05T22:12:00.000+01:00</published><updated>2010-01-06T09:22:07.424+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MEF'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 4 Beta: Managed Extensibility Framework (MEF)</title><content type='html'>&lt;p&gt;The Managed Extensibility Framework (MEF) is a new library in Silverlight 4. MEF enables you to build modularized applications whose components can be added in an incrementally. MEF ships as part of Silverlight 4, but we’ve also made a Silverlight 3 compatible version of MEF available on codeplex at &lt;a href="http://mef.codeplex.com/"&gt;MEF.Codeplex.com&lt;/a&gt; (current version: Preview 8). Read this post!&lt;/p&gt;  &lt;p&gt;I have create my sample application (VS solution: MEF). There’ are&amp;#160; &lt;a href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/12/31/silverlight-4-screencasts-the-managed-extensibility-framework-mef.aspx"&gt;excellent showcasts&lt;/a&gt; prepared by Mike Taulty. They show many MEF features. I have make VS solution (MEF2) with almost all presented cases. &lt;/p&gt;  &lt;p&gt;MEF&amp;#160; features in these 2 solutions:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Exports ([&lt;em&gt;Export&lt;/em&gt;])       &lt;ul&gt;       &lt;li&gt;Composable Part, properties, methods (as delegates) &lt;/li&gt;        &lt;li&gt;Export metadata ([&lt;em&gt;ExportMetadata&lt;/em&gt;(key, value)]) &lt;/li&gt;        &lt;li&gt;Custom Export Attributes ([&lt;em&gt;Custom&lt;/em&gt;]: [&lt;em&gt;Export&lt;/em&gt;]) &lt;/li&gt;        &lt;li&gt;Inheritance ([&lt;em&gt;InheritedExport&lt;/em&gt;]) &lt;/li&gt;        &lt;li&gt;Life time (option: [&lt;em&gt;PartCreationPolicy&lt;/em&gt;]:&amp;#160; &lt;em&gt;Any&lt;/em&gt;, &lt;em&gt;Shared&lt;/em&gt;, &lt;em&gt;Nonshared&lt;/em&gt;) &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Imports ([&lt;em&gt;Import&lt;/em&gt;]) &lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;Properties, constructor parameters ([&lt;em&gt;ImportingConstructor&lt;/em&gt;]), fields, collections ([&lt;em&gt;ImportMany&lt;/em&gt;]),&amp;#160; methods (as delegates) &lt;/li&gt;      &lt;li&gt;Parameter imports (Implied import&amp;#160; - type of parameter (by default),&amp;#160; Explicit import - contract) &lt;/li&gt;      &lt;li&gt;Importing Metadata &lt;/li&gt;      &lt;li&gt;Requirement ([&lt;em&gt;Import&lt;/em&gt;] option:&amp;#160; &lt;em&gt;AllowDefault&lt;/em&gt;) &lt;/li&gt;      &lt;li&gt;Recomposition (option: &lt;em&gt;AllowRecomposition&lt;/em&gt;) &lt;/li&gt;      &lt;li&gt;Notifications (&lt;em&gt;IPartImportsSatisfactionNotification&lt;/em&gt;) &lt;/li&gt;      &lt;li&gt;Rejection (Stable Composition) &lt;/li&gt;      &lt;li&gt;Lazy imports (&lt;em&gt;Lazy&lt;/em&gt;&amp;lt;&lt;em&gt;T&lt;/em&gt;&amp;gt;) &lt;/li&gt;      &lt;li&gt;Dynamic Instantiation (&lt;em&gt;PartCreator&lt;/em&gt;&amp;lt;&lt;em&gt;T&lt;/em&gt;&amp;gt;)&lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;Composition &amp;amp; hosting &lt;/li&gt;    &lt;ul&gt;     &lt;li&gt;Part Initializer (&lt;em&gt;PartInitializer.SatisfyImports&lt;/em&gt;) &lt;/li&gt;      &lt;li&gt;Catalogs (&lt;em&gt;AssemblyCatalog&lt;/em&gt;, .NET: &lt;em&gt;DirectoryCatalog /&lt;/em&gt; Silverlight:&lt;em&gt; PackageCatalog&lt;/em&gt;, &lt;em&gt;TypeCatalog&lt;/em&gt;, &lt;em&gt;AggregateCatalog&lt;/em&gt;) &lt;/li&gt;      &lt;li&gt;Containers (&lt;em&gt;CompositionContainer, &lt;em&gt;CompositionHost.InitializeContainer&lt;/em&gt;&lt;/em&gt;) &lt;/li&gt;   &lt;/ul&gt;    &lt;ul&gt;     &lt;li&gt;Export Providers (&lt;em&gt;CatalogExportProvider&lt;/em&gt;, &lt;em&gt;AggregateExportProvider&lt;/em&gt;) &lt;/li&gt;   &lt;/ul&gt;    &lt;li&gt;Silverlight 4 Beta Toolkit: Dynamic XAP downloading (&lt;em&gt;PackageCatalog&lt;/em&gt;, &lt;em&gt;Package.DownloadPackageAsync&lt;/em&gt;) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/S0RHPeQzDlI/AAAAAAAAAis/udZw_jtMhcw/s1600-h/MEF_01S3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MEF_01S" border="0" alt="MEF_01S" src="http://lh5.ggpht.com/_D_LHhy5fi8o/S0RHRmuqxEI/AAAAAAAAAiw/m3QvYXnCkHQ/MEF_01S_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/S0RHTkbi0SI/AAAAAAAAAi0/ow_zZiNpyKY/s1600-h/MEF_02S3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MEF_02S" border="0" alt="MEF_02S" src="http://lh3.ggpht.com/_D_LHhy5fi8o/S0RHWH3i26I/AAAAAAAAAi4/T7Y82GKjidY/MEF_02S_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/MEF^_Samples.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;On the Internet there are many interesting samples with MEF and Silverlight 3 or 4 Beta. For example:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://cid-f8b2fd72406fb218.skydrive.live.com/self.aspx/blog/PDC09%20Demos.zip"&gt;HauseSpacePlanner&lt;/a&gt; (PDC 09)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/S0RHYWzdarI/AAAAAAAAAi8/WP-ZVAUwX68/s1600-h/MEF_033.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MEF_03" border="0" alt="MEF_03" src="http://lh4.ggpht.com/_D_LHhy5fi8o/S0RHafKCW6I/AAAAAAAAAjA/ul9MIHVCZn0/MEF_03_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/S0RHc-HnNDI/AAAAAAAAAjE/RQO1DkVJ_HI/s1600-h/MEF_043.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MEF_04" border="0" alt="MEF_04" src="http://lh5.ggpht.com/_D_LHhy5fi8o/S0RHgYtrY8I/AAAAAAAAAjI/zS9jEtVYLH8/MEF_04_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://mef.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=34838#DownloadId=88937"&gt;ExtensibleGrid&lt;/a&gt; (Sample in MEF sources, PDC 09)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/S0RHlewuIwI/AAAAAAAAAjM/NIVhz_VcUcQ/s1600-h/MEF_05A3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MEF_05A" border="0" alt="MEF_05A" src="http://lh4.ggpht.com/_D_LHhy5fi8o/S0RHrFqD-VI/AAAAAAAAAjQ/d6-IrY7ixK4/MEF_05A_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/S0RHvd3ADEI/AAAAAAAAAjU/sbieKyAwNgk/s1600-h/MEF_053.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MEF_05" border="0" alt="MEF_05" src="http://lh4.ggpht.com/_D_LHhy5fi8o/S0RH0K-PftI/AAAAAAAAAjY/StnUWOjsARY/MEF_05_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/S0RH5C21SSI/AAAAAAAAAjc/Trgs2lQgQ9A/s1600-h/MEF_063.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MEF_06" border="0" alt="MEF_06" src="http://lh4.ggpht.com/_D_LHhy5fi8o/S0RH_Avr_fI/AAAAAAAAAjg/nZFi6re5ST4/MEF_06_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://brad_abrams.members.winisp.net/Projects/Silverlight3RTM/SilverlightMEFNavigation.zip"&gt;Silverlight 3 Navigation with MEF&lt;/a&gt; (Brad Abrams)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/S0RIBwYyfEI/AAAAAAAAAjk/ct-7CAV_P6k/s1600-h/MEF_073.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MEF_07" border="0" alt="MEF_07" src="http://lh5.ggpht.com/_D_LHhy5fi8o/S0RIEyE1SVI/AAAAAAAAAjo/nqULLS2sy9o/MEF_07_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/S0RIHyXzIoI/AAAAAAAAAjs/ag87LBeucWU/s1600-h/MEF_083.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MEF_08" border="0" alt="MEF_08" src="http://lh5.ggpht.com/_D_LHhy5fi8o/S0RIKy15eSI/AAAAAAAAAjw/5lZLNGuZlhc/MEF_08_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/FT24" href="http://microsoftpdc.com/Sessions/FT24"&gt;http://microsoftpdc.com/Sessions/FT24&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/gblock/" href="http://blogs.msdn.com/gblock/"&gt;http://blogs.msdn.com/gblock/&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;&lt;a title="http://blogs.msdn.com/gblock/archive/2009/11/29/mef-has-landed-in-silverlight-4-we-come-in-the-name-of-extensibility.aspx" href="http://blogs.msdn.com/gblock/archive/2009/11/29/mef-has-landed-in-silverlight-4-we-come-in-the-name-of-extensibility.aspx"&gt;http://blogs.msdn.com/gblock/archive/2009/11/29/mef-has-landed-in-silverlight-4-we-come-in-the-name-of-extensibility.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://blogs.msdn.com/gblock/archive/2009/11/30/building-the-hello-mef-dashboard-in-silverlight-4-part-i.aspx" href="http://blogs.msdn.com/gblock/archive/2009/11/30/building-the-hello-mef-dashboard-in-silverlight-4-part-i.aspx"&gt;http://blogs.msdn.com/gblock/archive/2009/11/30/building-the-hello-mef-dashboard-in-silverlight-4-part-i.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://blogs.msdn.com/gblock/archive/2009/12/05/building-hello-mef-part-ii-metadata-and-why-being-lazy-is-a-good-thing.aspx" href="http://blogs.msdn.com/gblock/archive/2009/12/05/building-hello-mef-part-ii-metadata-and-why-being-lazy-is-a-good-thing.aspx"&gt;http://blogs.msdn.com/gblock/archive/2009/12/05/building-hello-mef-part-ii-metadata-and-why-being-lazy-is-a-good-thing.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://blogs.msdn.com/gblock/archive/2009/12/15/building-hello-mef-part-iii-xap-partitioning-with-the-host-s-permission-and-the-sweetness-of-recomposition.aspx" href="http://blogs.msdn.com/gblock/archive/2009/12/15/building-hello-mef-part-iii-xap-partitioning-with-the-host-s-permission-and-the-sweetness-of-recomposition.aspx"&gt;http://blogs.msdn.com/gblock/archive/2009/12/15/building-hello-mef-part-iii-xap-partitioning-with-the-host-s-permission-and-the-sweetness-of-recomposition.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://blogs.msdn.com/gblock/archive/2009/08/16/should-i-use-mef-for-my-general-ioc-needs.aspx" href="http://blogs.msdn.com/gblock/archive/2009/08/16/should-i-use-mef-for-my-general-ioc-needs.aspx"&gt;http://blogs.msdn.com/gblock/archive/2009/08/16/should-i-use-mef-for-my-general-ioc-needs.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://blogs.msdn.com/gblock/archive/2009/11/01/should-i-use-mef-with-an-ioc-container-part-1.aspx" href="http://blogs.msdn.com/gblock/archive/2009/11/01/should-i-use-mef-with-an-ioc-container-part-1.aspx"&gt;http://blogs.msdn.com/gblock/archive/2009/11/01/should-i-use-mef-with-an-ioc-container-part-1.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://blogs.msdn.com/gblock/archive/2009/12/02/mef-and-prism-to-be-or-not-to-be.aspx" href="http://blogs.msdn.com/gblock/archive/2009/12/02/mef-and-prism-to-be-or-not-to-be.aspx"&gt;http://blogs.msdn.com/gblock/archive/2009/12/02/mef-and-prism-to-be-or-not-to-be.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://blogs.msdn.com/gblock/archive/2010/01/03/mef-and-prism-exploration-mef-module-loading.aspx" href="http://blogs.msdn.com/gblock/archive/2010/01/03/mef-and-prism-exploration-mef-module-loading.aspx"&gt;http://blogs.msdn.com/gblock/archive/2010/01/03/mef-and-prism-exploration-mef-module-loading.aspx&lt;/a&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a title="http://mtaulty.com/" href="http://mtaulty.com/"&gt;http://mtaulty.com/&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-managed-extensibility-framework.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-managed-extensibility-framework.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-managed-extensibility-framework.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/12/31/silverlight-4-screencasts-the-managed-extensibility-framework-mef.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/12/31/silverlight-4-screencasts-the-managed-extensibility-framework-mef.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/12/31/silverlight-4-screencasts-the-managed-extensibility-framework-mef.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2010/01/04/silverlight-4-beta-more-on-mef-and-the-packagecatalog.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2010/01/04/silverlight-4-beta-more-on-mef-and-the-packagecatalog.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2010/01/04/silverlight-4-beta-more-on-mef-and-the-packagecatalog.aspx&lt;/a&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a title="http://mef.codeplex.com/" href="http://mef.codeplex.com/"&gt;http://mef.codeplex.com/&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;&lt;a title="http://mef.codeplex.com/wikipage?title=Guide" href="http://mef.codeplex.com/wikipage?title=Guide"&gt;http://mef.codeplex.com/wikipage?title=Guide&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://mef.codeplex.com/wikipage?title=Architecture&amp;amp;referringTitle=Home" href="http://mef.codeplex.com/wikipage?title=Architecture&amp;amp;referringTitle=Home"&gt;http://mef.codeplex.com/wikipage?title=Architecture&amp;amp;referringTitle=Home&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://mef.codeplex.com/Project/Download/FileDownload.aspx?DownloadId=62133" href="http://mef.codeplex.com/Project/Download/FileDownload.aspx?DownloadId=62133"&gt;http://mef.codeplex.com/Project/Download/FileDownload.aspx?DownloadId=62133&lt;/a&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/using-mef-silverlight-4-extensibility/" href="http://silverlight.net/learn/videos/all/using-mef-silverlight-4-extensibility/"&gt;http://silverlight.net/learn/videos/all/using-mef-silverlight-4-extensibility/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://development-guides.silverbaylabs.org/Video/Silverlight-MEF" href="http://development-guides.silverbaylabs.org/Video/Silverlight-MEF"&gt;http://development-guides.silverbaylabs.org/Video/Silverlight-MEF&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/" href="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/shows/10-4/10-4-Episode-26-Creating-Extensible-Applications-with-the-Managed-Extensibility-Framework/" href="http://channel9.msdn.com/shows/10-4/10-4-Episode-26-Creating-Extensible-Applications-with-the-Managed-Extensibility-Framework/"&gt;http://channel9.msdn.com/shows/10-4/10-4-Episode-26-Creating-Extensible-Applications-with-the-Managed-Extensibility-Framework/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/brada/" href="http://blogs.msdn.com/brada/"&gt;http://blogs.msdn.com/brada/&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;&lt;a title="http://blogs.msdn.com/brada/archive/2008/09/29/simple-introduction-to-composite-applications-with-the-managed-extensions-framework.aspx" href="http://blogs.msdn.com/brada/archive/2008/09/29/simple-introduction-to-composite-applications-with-the-managed-extensions-framework.aspx"&gt;http://blogs.msdn.com/brada/archive/2008/09/29/simple-introduction-to-composite-applications-with-the-managed-extensions-framework.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://blogs.msdn.com/brada/archive/2009/07/13/managed-extensibility-framework-mef-preview-6-silverlight-support-and-much-more.aspx" href="http://blogs.msdn.com/brada/archive/2009/07/13/managed-extensibility-framework-mef-preview-6-silverlight-support-and-much-more.aspx"&gt;http://blogs.msdn.com/brada/archive/2009/07/13/managed-extensibility-framework-mef-preview-6-silverlight-support-and-much-more.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://blogs.msdn.com/brada/archive/2009/07/20/simple-example-using-managed-extensibility-framework-in-silverlight.aspx" href="http://blogs.msdn.com/brada/archive/2009/07/20/simple-example-using-managed-extensibility-framework-in-silverlight.aspx"&gt;http://blogs.msdn.com/brada/archive/2009/07/20/simple-example-using-managed-extensibility-framework-in-silverlight.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://blogs.msdn.com/brada/archive/2009/07/31/silverlight-3-navigation-dynamically-loaded-pages-now-mef-powered.aspx" href="http://blogs.msdn.com/brada/archive/2009/07/31/silverlight-3-navigation-dynamically-loaded-pages-now-mef-powered.aspx"&gt;http://blogs.msdn.com/brada/archive/2009/07/31/silverlight-3-navigation-dynamically-loaded-pages-now-mef-powered.aspx&lt;/a&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/nblumhardt/" href="http://blogs.msdn.com/nblumhardt/"&gt;http://blogs.msdn.com/nblumhardt/&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;&lt;a title="http://blogs.msdn.com/nblumhardt/archive/2009/07/09/mef-preview-6-available.aspx" href="http://blogs.msdn.com/nblumhardt/archive/2009/07/09/mef-preview-6-available.aspx"&gt;http://blogs.msdn.com/nblumhardt/archive/2009/07/09/mef-preview-6-available.aspx&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a title="http://blogs.msdn.com/nblumhardt/archive/2009/07/17/light-up-or-mef-optional-exports.aspx" href="http://blogs.msdn.com/nblumhardt/archive/2009/07/17/light-up-or-mef-optional-exports.aspx"&gt;http://blogs.msdn.com/nblumhardt/archive/2009/07/17/light-up-or-mef-optional-exports.aspx&lt;/a&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/dsplaisted/" href="http://blogs.msdn.com/dsplaisted/"&gt;http://blogs.msdn.com/dsplaisted/&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;&lt;a title="http://blogs.msdn.com/dsplaisted/archive/2009/06/08/a-crash-course-on-the-mef-primitives.aspx" href="http://blogs.msdn.com/dsplaisted/archive/2009/06/08/a-crash-course-on-the-mef-primitives.aspx"&gt;http://blogs.msdn.com/dsplaisted/archive/2009/06/08/a-crash-course-on-the-mef-primitives.aspx&lt;/a&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a title="http://denisvuyka.wordpress.com/" href="http://denisvuyka.wordpress.com/"&gt;http://denisvuyka.wordpress.com/&lt;/a&gt;       &lt;ul&gt;       &lt;li&gt;&lt;a title="http://denisvuyka.wordpress.com/2009/02/21/using-eventaggregator-with-mef/" href="http://denisvuyka.wordpress.com/2009/02/21/using-eventaggregator-with-mef/"&gt;http://denisvuyka.wordpress.com/2009/02/21/using-eventaggregator-with-mef/&lt;/a&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.silverlight.net/blogs/jesseliberty/archive/2009/12/08/mef-silverlight-and-the-hvp.aspx" href="http://blogs.silverlight.net/blogs/jesseliberty/archive/2009/12/08/mef-silverlight-and-the-hvp.aspx"&gt;http://blogs.silverlight.net/blogs/jesseliberty/archive/2009/12/08/mef-silverlight-and-the-hvp.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://ayende.com/Blog/archive/2008/09/25/the-managed-extensibility-framework.aspx" href="http://ayende.com/Blog/archive/2008/09/25/the-managed-extensibility-framework.aspx"&gt;http://ayende.com/Blog/archive/2008/09/25/the-managed-extensibility-framework.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.sidarok.com/web/blog/content/2008/09/26/what-is-this-managed-extensibility-framework-thing-all-about.html" href="http://www.sidarok.com/web/blog/content/2008/09/26/what-is-this-managed-extensibility-framework-thing-all-about.html"&gt;http://www.sidarok.com/web/blog/content/2008/09/26/what-is-this-managed-extensibility-framework-thing-all-about.html&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-8315547454062643689?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/8315547454062643689/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=8315547454062643689' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8315547454062643689'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8315547454062643689'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2010/01/new-features-in-silverlight-4-beta.html' title='New features in Silverlight 4 Beta: Managed Extensibility Framework (MEF)'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/S0RHRmuqxEI/AAAAAAAAAiw/m3QvYXnCkHQ/s72-c/MEF_01S_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-5285588767065869685</id><published>2009-12-27T23:33:00.000+01:00</published><updated>2009-12-28T01:05:15.950+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 4 Beta: Implicit Styles &amp; CompositeTransform</title><content type='html'>&lt;p&gt;In this post I’ll show two useful features: implicit styles and new transform - &lt;em&gt;CompositeTransform&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Implicit Styles&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Szf1_PWjgDI/AAAAAAAAAic/VG2o8BcksU4/s1600-h/implicit_styles_vB%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="implicit_styles_vB" border="0" alt="implicit_styles_vB" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Szf2DRssylI/AAAAAAAAAig/cc2jVQMPWPs/implicit_styles_vB_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/ImplicitStyles.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt;&amp;#160;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/MagicMirror/MagicMirror/" href="http://channel9.msdn.com/learn/courses/Silverlight4/MagicMirror/MagicMirror/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/MagicMirror/MagicMirror/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/OutOfBrowser/OutOfBrowser/" href="http://channel9.msdn.com/learn/courses/Silverlight4/OutOfBrowser/OutOfBrowser/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/OutOfBrowser/OutOfBrowser/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/" href="http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/system.windows.style(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/system.windows.style(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.windows.style(VS.96).aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;CompositeTransform&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Szf2I8iOV3I/AAAAAAAAAik/PrLPKr05waU/s1600-h/composite_transform_vB%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="composite_transform_vB" border="0" alt="composite_transform_vB" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Szf2OldkEmI/AAAAAAAAAio/pvuzVXjBMLQ/composite_transform_vB_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/Transforms.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Useful links &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/system.windows.media.compositetransform(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/system.windows.media.compositetransform(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.windows.media.compositetransform(VS.96).aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://adamkinney.wordpress.com/2009/11/22/compositetransform-simplifies-transforms-in-silverlight-4-beta/" href="http://adamkinney.wordpress.com/2009/11/22/compositetransform-simplifies-transforms-in-silverlight-4-beta/"&gt;http://adamkinney.wordpress.com/2009/11/22/compositetransform-simplifies-transforms-in-silverlight-4-beta/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-compositetransform.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-compositetransform.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-compositetransform.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-5285588767065869685?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/5285588767065869685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=5285588767065869685' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5285588767065869685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5285588767065869685'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_27.html' title='New features in Silverlight 4 Beta: Implicit Styles &amp;amp; CompositeTransform'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/Szf2DRssylI/AAAAAAAAAig/cc2jVQMPWPs/s72-c/implicit_styles_vB_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-8635684358282848234</id><published>2009-12-27T19:04:00.000+01:00</published><updated>2009-12-27T21:10:41.988+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 4 Beta: Out Of Browser Applications (Trusted)</title><content type='html'>&lt;p&gt;I previously wrote a &lt;a href="http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta-out.html"&gt;post&lt;/a&gt; about new features of sandboxed out of browser applications. This post focuses on trusted applications. &lt;/p&gt;  &lt;p&gt;Trusted application features&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Install requires users to “trust” the application &lt;/li&gt;    &lt;li&gt;Group Policy support for      &lt;ul&gt;       &lt;li&gt;Disabling installation of Trusted Applications &lt;/li&gt;        &lt;li&gt;Disabling activation of Trusted Applications &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/Sze-SpkGggI/AAAAAAAAAh8/zaEXP-iZMIc/s1600-h/trusted_01%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="trusted_01" border="0" alt="trusted_01" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Sze-X2PXUwI/AAAAAAAAAiA/hSVZaLqwXyA/trusted_01_thumb%5B1%5D.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Native Integration / COM Automation objects on Windows      &lt;ul&gt;       &lt;li&gt;&lt;em&gt;ComAutomationFactory&lt;/em&gt; &lt;/li&gt;        &lt;li&gt;C# 4.0 “dynamic” programming model &lt;/li&gt;        &lt;li&gt;Standard language feature in Visual Basic &lt;/li&gt;        &lt;li&gt;Automation features supported in SL 4 Beta          &lt;ul&gt;           &lt;li&gt;Property get/set, indexed property get/set &lt;/li&gt;            &lt;li&gt;Positional and optional parameters &lt;/li&gt;            &lt;li&gt;Support by ref and by value &lt;/li&gt;            &lt;li&gt;In proc and out of proc servers &lt;/li&gt;            &lt;li&gt;Support VARIANT, BSTR, SAFEARRAY &lt;/li&gt;            &lt;li&gt;Sink dispatch events with arguments &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;Automation features not supported in SL 4 Beta          &lt;ul&gt;           &lt;li&gt;Marshalling user defined types &lt;/li&gt;            &lt;li&gt;Multi-dimensional or jagged arrays &lt;/li&gt;            &lt;li&gt;Named parameters &lt;/li&gt;            &lt;li&gt;&lt;em&gt;IEnumVariant&lt;/em&gt; &lt;/li&gt;            &lt;li&gt;Type Information &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sze-gOlTlrI/AAAAAAAAAiE/W-3Kp9M0kG0/s1600-h/trusted_02%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="trusted_02" border="0" alt="trusted_02" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sze-qAAbHkI/AAAAAAAAAiI/qTF8koBcy1g/trusted_02_thumb%5B1%5D.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;File System Access      &lt;ul&gt;       &lt;li&gt;Folders: &lt;em&gt;MyDocuments&lt;/em&gt;, &lt;em&gt;MyMusic&lt;/em&gt;, &lt;em&gt;MyPictures&lt;/em&gt;, &lt;em&gt;MyVideos&lt;/em&gt; &lt;/li&gt;        &lt;li&gt;These folders are distinct from the Windows 7 Libraries &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/Sze-0MoMlvI/AAAAAAAAAiM/PKdWqZK2Gqs/s1600-h/trusted_03%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="trusted_03" border="0" alt="trusted_03" src="http://lh4.ggpht.com/_D_LHhy5fi8o/Sze-_Deg-HI/AAAAAAAAAiQ/h66ZnUtES1Y/trusted_03_thumb%5B1%5D.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Relax sandbox speed bumps      &lt;ul&gt;       &lt;li&gt;Enable cross domain HTTP networking &lt;/li&gt;        &lt;li&gt;Eliminate site locking for &lt;em&gt;WebBrowser&lt;/em&gt; &lt;/li&gt;        &lt;li&gt;Full path in &lt;em&gt;Open&lt;/em&gt;/&lt;em&gt;SaveFileDialog&lt;/em&gt; &lt;/li&gt;        &lt;li&gt;Eliminate user initiation          &lt;ul&gt;           &lt;li&gt;&lt;em&gt;Open&lt;/em&gt;/&lt;em&gt;SaveFileDialog&lt;/em&gt; &lt;/li&gt;            &lt;li&gt;Clipboard access &lt;/li&gt;            &lt;li&gt;Full screen mode &lt;/li&gt;            &lt;li&gt;Changing window settings &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;Enable full keyboard in full screen mode &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/Sze_G7hVs2I/AAAAAAAAAiU/DRm7UHCooEE/s1600-h/trusted_04%5B7%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="trusted_04" border="0" alt="trusted_04" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Sze_Px9Dl5I/AAAAAAAAAiY/aylZuBEPVEQ/trusted_04_thumb%5B3%5D.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/OutOfBrowser^_v2.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt;&amp;#160; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/CL20"&gt;http://microsoftpdc.com/Sessions/CL20&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/jstegman/archive/2009/11/19/trustedapp-sample-from-pdc-2009.aspx"&gt;http://blogs.msdn.com/jstegman/archive/2009/11/19/trustedapp-sample-from-pdc-2009.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/com-object-access-trusted-applications/" href="http://silverlight.net/learn/videos/all/com-object-access-trusted-applications/"&gt;http://silverlight.net/learn/videos/all/com-object-access-trusted-applications/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/local-file-access/" href="http://silverlight.net/learn/videos/all/local-file-access/"&gt;http://silverlight.net/learn/videos/all/local-file-access/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/network-authentication-trusted-network-access/" href="http://silverlight.net/learn/videos/all/network-authentication-trusted-network-access/"&gt;http://silverlight.net/learn/videos/all/network-authentication-trusted-network-access/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/OutOfBrowser/OutOfBrowser/" href="http://channel9.msdn.com/learn/courses/Silverlight4/OutOfBrowser/OutOfBrowser/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/OutOfBrowser/OutOfBrowser/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/dd550721(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/dd550721(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd550721(VS.96).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/ee721083(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/ee721083(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee721083(VS.96).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/12/23/silverlight-4-grabbing-emails-from-the-outlook-inbox.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/12/23/silverlight-4-grabbing-emails-from-the-outlook-inbox.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/12/23/silverlight-4-grabbing-emails-from-the-outlook-inbox.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-8635684358282848234?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/8635684358282848234/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=8635684358282848234' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8635684358282848234'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8635684358282848234'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta-out_27.html' title='New features in Silverlight 4 Beta: Out Of Browser Applications (Trusted)'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/Sze-X2PXUwI/AAAAAAAAAiA/hSVZaLqwXyA/s72-c/trusted_01_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-2981065207546021518</id><published>2009-12-21T22:13:00.000+01:00</published><updated>2009-12-22T09:26:52.684+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 4 Beta: Out Of Browser Applications (Sandboxed)</title><content type='html'>&lt;p&gt;Out of browser applications are cool, aren’t they? In the near future I’ll write two posts about it. Today I’ll present enhancements of sandboxed applications.&lt;/p&gt;  &lt;p&gt;Sandboxed out of browser additions:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Web Browser/HTML hosting      &lt;ul&gt;       &lt;li&gt;&lt;em&gt;WebBrowser&lt;/em&gt; control &lt;/li&gt;        &lt;li&gt;&lt;em&gt;HtmlBrush&lt;/em&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Window settings      &lt;ul&gt;       &lt;li&gt;Runtime changes to &lt;em&gt;Height&lt;/em&gt;/&lt;em&gt;Width&lt;/em&gt; &lt;/li&gt;        &lt;li&gt;Specify startup location (in manifest) &lt;/li&gt;        &lt;li&gt;Runtime control over &lt;em&gt;WindowState&lt;/em&gt; (&lt;em&gt;Normal&lt;/em&gt;, &lt;em&gt;Minimized&lt;/em&gt;, &lt;em&gt;Maximized&lt;/em&gt;) &lt;/li&gt;        &lt;li&gt;Supports “TopMost” Apps (toolbar apps) &lt;/li&gt;        &lt;li&gt;Enable App “Activate” (&lt;em&gt;Normal&lt;/em&gt; window state - bringing to front, &lt;em&gt;Minimized&lt;/em&gt; - flashing the taskbar) &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;Toast notifications (&lt;em&gt;NotificationWindow&lt;/em&gt;) &lt;/li&gt;    &lt;li&gt;DRM media playback &lt;/li&gt;    &lt;li&gt;Add/Remove Program Integration &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;em&gt;WebBrowser&lt;/em&gt; control is cool, but it doesn’t support opacity, rotation, effects and overlaid content (Silverlight content on HTML). &lt;/p&gt;  &lt;p&gt;&lt;em&gt;HtmlBrush&lt;/em&gt; requires manual refreshing (&lt;em&gt;Refresh&lt;/em&gt; method).&lt;/p&gt;  &lt;p&gt;&lt;em&gt;NotificationWindow&lt;/em&gt; also has some limitations: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Size up to 400 x 100 &lt;/li&gt;    &lt;li&gt;Popup duration to 30 seconds &lt;/li&gt;    &lt;li&gt;Cannot set opacity and rounded corners &lt;/li&gt;    &lt;li&gt;Cannot launch popup windows &lt;/li&gt;    &lt;li&gt;Location is fixing per operating system (Windows - lower right, OS X - upper right) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SzCBxTe1WDI/AAAAAAAAAhY/VNmKsvLFv0o/s1600-h/outofbrowser_03.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="out-of-browser_0" border="0" alt="out-of-browser_0" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SzCB4Ze4tBI/AAAAAAAAAhc/ouXWuuQG4CE/outofbrowser_0_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SzCCBlksdFI/AAAAAAAAAhg/azAGcTToMRI/s1600-h/outofbrowser_13.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="out-of-browser_1" border="0" alt="out-of-browser_1" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SzCCLr3Z5dI/AAAAAAAAAhk/yVSbkJpyMz8/outofbrowser_1_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SzCCXGmt8DI/AAAAAAAAAho/jme_Ryi9rFo/s1600-h/outofbrowser_23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="out-of-browser_2" border="0" alt="out-of-browser_2" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SzCCj6-Yl3I/AAAAAAAAAhs/x0w-KLdaO0Q/outofbrowser_2_thumb1.png?imgmax=800" width="644" height="484" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/OutOfBrowser^_v1.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;You can make much more. Look at cool &lt;a href="http://www.silverlight.net/community/samples/silverlight-4-beta/html-puzzle/"&gt;HTML Puzzle&lt;/a&gt; example from PDC !&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SzCCq0PybiI/AAAAAAAAAh0/qyKX65Bk-Uc/s1600-h/puzzles%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="puzzles" border="0" alt="puzzles" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SzCCyd2Ob4I/AAAAAAAAAh4/eWou5yntlV4/puzzles_thumb%5B1%5D.png?imgmax=800" width="644" height="363" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Useful links &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/CL20" href="http://microsoftpdc.com/Sessions/CL20"&gt;http://microsoftpdc.com/Sessions/CL20&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/jstegman/archive/2009/11/19/browserflow-sample-from-pdc-2009.aspx" href="http://blogs.msdn.com/jstegman/archive/2009/11/19/browserflow-sample-from-pdc-2009.aspx"&gt;http://blogs.msdn.com/jstegman/archive/2009/11/19/browserflow-sample-from-pdc-2009.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/jstegman/archive/2009/11/19/trustedapp-sample-from-pdc-2009.aspx" href="http://blogs.msdn.com/jstegman/archive/2009/11/19/trustedapp-sample-from-pdc-2009.aspx"&gt;http://blogs.msdn.com/jstegman/archive/2009/11/19/trustedapp-sample-from-pdc-2009.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/KEY02"&gt;http://microsoftpdc.com/Sessions/KEY02&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://weblogs.asp.net/scottgu/archive/2009/12/16/silverlight-4-demos-from-my-pdc-keynote-now-available.aspx"&gt;http://weblogs.asp.net/scottgu/archive/2009/12/16/silverlight-4-demos-from-my-pdc-keynote-now-available.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://johnpapa.net/silverlight/silverlight-4-html-puzzle-how-does-it-work/" href="http://johnpapa.net/silverlight/silverlight-4-html-puzzle-how-does-it-work/"&gt;http://johnpapa.net/silverlight/silverlight-4-html-puzzle-how-does-it-work/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/hosting-html-content/" href="http://silverlight.net/learn/videos/all/hosting-html-content/"&gt;http://silverlight.net/learn/videos/all/hosting-html-content/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/notification-api/" href="http://silverlight.net/learn/videos/all/notification-api/"&gt;http://silverlight.net/learn/videos/all/notification-api/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.85turns.com/2009/11/18/notificationwindow-silverlight-4/" href="http://www.85turns.com/2009/11/18/notificationwindow-silverlight-4/"&gt;http://www.85turns.com/2009/11/18/notificationwindow-silverlight-4/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://timheuer.com/blog/archive/2009/11/22/silverlight-4-notification-window-queue-sample.aspx" href="http://timheuer.com/blog/archive/2009/11/22/silverlight-4-notification-window-queue-sample.aspx"&gt;http://timheuer.com/blog/archive/2009/11/22/silverlight-4-notification-window-queue-sample.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/dd550721(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/dd550721(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd550721(VS.96).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/system.windows.controls.webbrowser(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/system.windows.controls.webbrowser(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.windows.controls.webbrowser(VS.96).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/system.windows.notificationwindow(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/system.windows.notificationwindow(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.windows.notificationwindow(VS.96).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/system.windows.window(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/system.windows.window(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.windows.window(VS.96).aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-2981065207546021518?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/2981065207546021518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=2981065207546021518' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2981065207546021518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2981065207546021518'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta-out.html' title='New features in Silverlight 4 Beta: Out Of Browser Applications (Sandboxed)'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/SzCB4Ze4tBI/AAAAAAAAAhc/ouXWuuQG4CE/s72-c/outofbrowser_0_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-1377728818203815827</id><published>2009-12-18T07:36:00.000+01:00</published><updated>2009-12-18T09:22:28.241+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 4 Beta: RichTextArea Control, Right to Left Flow Direction &amp; Text Trimming</title><content type='html'>&lt;p&gt;Have you checked out the new cool &lt;em&gt;RichTextArea&lt;/em&gt; control or &lt;em&gt;TextBlock&lt;/em&gt; with trimming ? Read this post.&lt;/p&gt;  &lt;p&gt;The &lt;em&gt;RichTextArea&lt;/em&gt; allows hyperlinks, XAML content, and embedding of images. It supports changing the font size, foreground color, and making text bold, italicized, and underlined.&amp;#160; Paragraph blocks allow different formatting of blocks of text. Mouse events, clipboard, undo, language localization are also supported. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Sys7XzXWaRI/AAAAAAAAAg4/wsjjgNQt8ZE/s1600-h/richtextarea_1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="richtextarea_1" border="0" alt="richtextarea_1" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Sys7b4fmtxI/AAAAAAAAAg8/U_TVcpdp1o8/richtextarea_1_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Some limitations&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;UI elements and hyperlinks are active only in read-only mode. &lt;/li&gt;    &lt;li&gt;You can cut, copy, or paste only plain text. &lt;/li&gt;    &lt;li&gt;Undo is supported only if the &lt;em&gt;IsReadOnly&lt;/em&gt; property is false.&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sys7e3PgVBI/AAAAAAAAAhA/iwJHfNMcBqM/s1600-h/richtextarea_3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="richtextarea_3" border="0" alt="richtextarea_3" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sys7ipRBY3I/AAAAAAAAAhE/7vYozxAA5r0/richtextarea_3_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You can now set the direction of content and layout of each control to flow from right side to the left (which is useful for some languages such as Hebrew or Arabic). All &lt;em&gt;UIElement&lt;/em&gt; controls inherit the &lt;em&gt;FlowDirection&lt;/em&gt; from their parent except &lt;em&gt;Image&lt;/em&gt;, &lt;em&gt;MediaElement&lt;/em&gt;, &lt;em&gt;MultiScaleImage&lt;/em&gt; and &lt;em&gt;Popup&lt;/em&gt;. When brushes and effects are applied to elements whose &lt;em&gt;FlowDirection&lt;/em&gt; property is set &lt;em&gt;RightToLeft&lt;/em&gt;, the result is flipped horizontally.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sys7mB0TwUI/AAAAAAAAAhI/uY5c3MqI75k/s1600-h/richtextarea_4%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="richtextarea_4" border="0" alt="richtextarea_4" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Sys7qC2ViaI/AAAAAAAAAhM/UpQ9Kpm5n7o/richtextarea_4_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The &lt;em&gt;TextBlock&lt;/em&gt; has a new &lt;em&gt;TextTrimming&lt;/em&gt; property. When this property is set to &lt;em&gt;WordEllipsis&lt;/em&gt; and the text in the &lt;em&gt;TextBlock&lt;/em&gt; exceeds the visible limit, the text appears truncated with a trailing three ellipsis. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Sys7tVuV5jI/AAAAAAAAAhQ/_nPx2nWwZDM/s1600-h/texttrimming_12%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="texttrimming_12" border="0" alt="texttrimming_12" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Sys7wmaDK6I/AAAAAAAAAhU/9BKtDmiGVe0/texttrimming_12_thumb%5B1%5D.png?imgmax=800" width="644" height="291" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/TextSamples.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="left"&gt;Other text improvements&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;Arabic and Hebrew Text Support&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;IME (Input Method Editors) improvements for &lt;em&gt;TextBox&lt;/em&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;em&gt;UIElement&lt;/em&gt;: &lt;em&gt;TextInputStart&lt;/em&gt;, &lt;em&gt;TextInputUpdate&lt;/em&gt;, &lt;em&gt;TextInput&lt;/em&gt; events&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Useful links:&amp;#160; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/KEY02" href="http://microsoftpdc.com/Sessions/KEY02"&gt;http://microsoftpdc.com/Sessions/KEY02&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://weblogs.asp.net/scottgu/archive/2009/12/16/silverlight-4-demos-from-my-pdc-keynote-now-available.aspx" href="http://weblogs.asp.net/scottgu/archive/2009/12/16/silverlight-4-demos-from-my-pdc-keynote-now-available.aspx"&gt;http://weblogs.asp.net/scottgu/archive/2009/12/16/silverlight-4-demos-from-my-pdc-keynote-now-available.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/richtextarea-part-1/" href="http://silverlight.net/learn/videos/all/richtextarea-part-1/"&gt;http://silverlight.net/learn/videos/all/richtextarea-part-1/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/richtextarea-part-2/" href="http://silverlight.net/learn/videos/all/richtextarea-part-2/"&gt;http://silverlight.net/learn/videos/all/richtextarea-part-2/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/bidi-right-to-left/" href="http://silverlight.net/learn/videos/all/bidi-right-to-left/"&gt;http://silverlight.net/learn/videos/all/bidi-right-to-left/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com//learn/courses/Silverlight4/RichTextEditor/RichTextEditor/" href="http://channel9.msdn.com//learn/courses/Silverlight4/RichTextEditor/RichTextEditor/"&gt;http://channel9.msdn.com//learn/courses/Silverlight4/RichTextEditor/RichTextEditor/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/" href="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/silverlight_sdk/archive/2009/12/03/have-you-checked-out-the-new-richtextarea-control.aspx" href="http://blogs.msdn.com/silverlight_sdk/archive/2009/12/03/have-you-checked-out-the-new-richtextarea-control.aspx"&gt;http://blogs.msdn.com/silverlight_sdk/archive/2009/12/03/have-you-checked-out-the-new-richtextarea-control.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/ee681613(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/ee681613(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee681613(VS.96).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-textblock-with-trimming.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-textblock-with-trimming.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-textblock-with-trimming.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-1377728818203815827?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/1377728818203815827/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=1377728818203815827' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/1377728818203815827'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/1377728818203815827'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_18.html' title='New features in Silverlight 4 Beta: RichTextArea Control, Right to Left Flow Direction &amp;amp; Text Trimming'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/Sys7b4fmtxI/AAAAAAAAAg8/U_TVcpdp1o8/s72-c/richtextarea_1_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-8147812795237959863</id><published>2009-12-16T07:05:00.000+01:00</published><updated>2009-12-16T21:17:04.535+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 4 Beta: Navigation Page Loading Extensibility &amp; Data Binding Changes</title><content type='html'>&lt;p&gt;Today I’ll show two new Silverlight 4 features: custom navigation and data binding enhancements.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Navigation Page Loading Extensibility&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Now you can extend the navigation system by setting a new &lt;em&gt;ContentLoader&lt;/em&gt; property of the &lt;em&gt;Frame&lt;/em&gt; class to a custom &lt;em&gt;INavigationContentLoader&lt;/em&gt; implementation. The default &lt;em&gt;ContentLoader&lt;/em&gt; property value is an instance of the &lt;em&gt;PageResourceContentLoader&lt;/em&gt; class. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SyiaKtyTLWI/AAAAAAAAAgY/46XxpCEvJ04/s1600-h/navigation_1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="navigation_1" border="0" alt="navigation_1" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SyiaMd4uFKI/AAAAAAAAAgc/LmrhUUwEWDE/navigation_1_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&amp;#160;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/NavigationExtensibility.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt;&amp;#160; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-taking-control-of-navigation.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-taking-control-of-navigation.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-taking-control-of-navigation.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.davidpoll.com/2009/11/30/opening-up-silverlight-4-navigation-introduction-to-inavigationcontentloader/" href="http://www.davidpoll.com/2009/11/30/opening-up-silverlight-4-navigation-introduction-to-inavigationcontentloader/"&gt;http://www.davidpoll.com/2009/11/30/opening-up-silverlight-4-navigation-introduction-to-inavigationcontentloader/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.davidpoll.com/2009/12/07/opening-up-silverlight-4-navigation-event-based-and-error-handling-inavigationcontentloaders/" href="http://www.davidpoll.com/2009/12/07/opening-up-silverlight-4-navigation-event-based-and-error-handling-inavigationcontentloaders/"&gt;http://www.davidpoll.com/2009/12/07/opening-up-silverlight-4-navigation-event-based-and-error-handling-inavigationcontentloaders/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/cc838245(VS.96).aspx#extending_the_navigation_system" href="http://msdn.microsoft.com/en-us/library/cc838245(VS.96).aspx#extending_the_navigation_system"&gt;http://msdn.microsoft.com/en-us/library/cc838245(VS.96).aspx#extending_the_navigation_system&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/system.windows.navigation.pageresourcecontentloader(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/system.windows.navigation.pageresourcecontentloader(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.windows.navigation.pageresourcecontentloader(VS.96).aspx&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Data binding changes&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I have made two sample applications to demonstrate new data binding features.&lt;/p&gt;  &lt;p&gt;&lt;u&gt;Data Binding Sample One&lt;/u&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Validation with &lt;em&gt;IDataErrorInfo&lt;/em&gt; interface (&lt;em&gt;ValidatesOnDataErrors&lt;/em&gt;) &lt;/li&gt;    &lt;li&gt;String formatting, Null and Fallback values (&lt;em&gt;StringFormat&lt;/em&gt;, &lt;em&gt;TargetNull&lt;/em&gt;, &lt;em&gt;FallbackValue&lt;/em&gt;) &lt;/li&gt;    &lt;li&gt;Databinding support for dependency objects &lt;/li&gt;    &lt;li&gt;Grouping on &lt;em&gt;CollectionViewSource&lt;/em&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SyiaPAVGxmI/AAAAAAAAAgg/OEmY8gtWu_I/s1600-h/binding_validation_1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="binding_validation_1" border="0" alt="binding_validation_1" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SyiaSJkVLpI/AAAAAAAAAgk/ufA-Y_kVB7s/binding_validation_1_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;u&gt;Data Binding Sample Two&lt;/u&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Synchronous and asynchronous validation with &lt;em&gt;INotifyDataErrorInfo&lt;/em&gt; interface (&lt;em&gt;ValidatesOnNotifyDataErrors&lt;/em&gt;) &lt;/li&gt;    &lt;li&gt;&lt;em&gt;Command&lt;/em&gt; property on &lt;em&gt;ButtonBase&lt;/em&gt; and &lt;em&gt;Hyperlink&lt;/em&gt; (in the sample: &lt;em&gt;Button&lt;/em&gt;) &lt;/li&gt;    &lt;li&gt;Binding to string indexers &lt;/li&gt;    &lt;li&gt;&lt;em&gt;SelectedValue&lt;/em&gt; and &lt;em&gt;SelectedValuePath&lt;/em&gt; on the &lt;em&gt;Selector&lt;/em&gt; (in the sample: &lt;em&gt;ComboBox&lt;/em&gt;) &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SyiaUWMjbbI/AAAAAAAAAgo/K6SfzAd4TAA/s1600-h/binding_validation_2a%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="binding_validation_2a" border="0" alt="binding_validation_2a" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SyiaW60ghxI/AAAAAAAAAgs/OnlzDxLujR0/binding_validation_2a_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SyiaY7k0JUI/AAAAAAAAAgw/Ol8uXn6N_NE/s1600-h/binding_validation_2b%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="binding_validation_2b" border="0" alt="binding_validation_2b" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Syiabr4uCPI/AAAAAAAAAg0/JmrtNq5nxto/binding_validation_2b_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/BindingValidation.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Other data binding&amp;#160; improvements &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;em&gt;ObservableCollection&amp;lt;T&amp;gt;&lt;/em&gt; constructor that takes &lt;em&gt;IEnumerable&lt;/em&gt; or &lt;em&gt;IList&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;em&gt;IEditableCollectionView&lt;/em&gt; (for example &lt;em&gt;PagedCollectionView&lt;/em&gt;) &lt;/li&gt; &lt;/ul&gt;  &lt;p align="left"&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;&lt;a href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt;&amp;#160;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;a href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;a title="http://microsoftpdc.com/Sessions/CL19" href="http://microsoftpdc.com/Sessions/CL19"&gt;http://microsoftpdc.com/Sessions/CL19&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;a title="http://www.davidpoll.com/2009/11/19/silverlight-4-and-building-business-applications-pdc09-cl19/" href="http://www.davidpoll.com/2009/11/19/silverlight-4-and-building-business-applications-pdc09-cl19/"&gt;http://www.davidpoll.com/2009/11/19/silverlight-4-and-building-business-applications-pdc09-cl19/&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;a title="http://silverlight.net/learn/videos/all/asynchronous-data-validation/" href="http://silverlight.net/learn/videos/all/asynchronous-data-validation/"&gt;http://silverlight.net/learn/videos/all/asynchronous-data-validation/&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/EmployeeManager/EmployeeManager/" href="http://channel9.msdn.com/learn/courses/Silverlight4/EmployeeManager/EmployeeManager/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/EmployeeManager/EmployeeManager/&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;a title="http://www.silverlightshow.net/items/Developing-applications-gets-easy-with-improved-DataBinding-in-Silverlight-4.aspx" href="http://www.silverlightshow.net/items/Developing-applications-gets-easy-with-improved-DataBinding-in-Silverlight-4.aspx"&gt;http://www.silverlightshow.net/items/Developing-applications-gets-easy-with-improved-DataBinding-in-Silverlight-4.aspx&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;a title="http://wildermuth.com/2009/11/18/Data_Binding_Changes_in_Silverlight_4" href="http://wildermuth.com/2009/11/18/Data_Binding_Changes_in_Silverlight_4"&gt;http://wildermuth.com/2009/11/18/Data_Binding_Changes_in_Silverlight_4&lt;/a&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-selectedvalue.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-selectedvalue.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-selectedvalue.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/cc278072(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/cc278072(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/cc278072(VS.96).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/cc189022(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/cc189022(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/cc189022(VS.96).aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/cc645024(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/cc645024(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/cc645024(VS.96).aspx&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-8147812795237959863?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/8147812795237959863/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=8147812795237959863' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8147812795237959863'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8147812795237959863'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_16.html' title='New features in Silverlight 4 Beta: Navigation Page Loading Extensibility &amp;amp; Data Binding Changes'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_D_LHhy5fi8o/SyiaMd4uFKI/AAAAAAAAAgc/LmrhUUwEWDE/s72-c/navigation_1_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-4816366594873275042</id><published>2009-12-11T07:43:00.000+01:00</published><updated>2009-12-11T08:44:41.774+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 4 Beta: Fluid UI States for ItemsControl</title><content type='html'>&lt;p&gt;Now you can animate items into/out of ItemsControls ! Read this post.&lt;/p&gt;  &lt;p&gt;The &lt;em&gt;ListBoxItem&lt;/em&gt; has a new visual state group called &lt;em&gt;Layout States&lt;/em&gt; that has &lt;em&gt;BeforeLoaded&lt;/em&gt;, &lt;em&gt;Loaded&lt;/em&gt;, and &lt;em&gt;Unloaded&lt;/em&gt; visual states. These visual states help animate the transition between states when an item is loaded and unloaded from an ItemsControl. Fluid states are applied to containers generated from a &lt;em&gt;DataTemplate&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SyH4Nt7KySI/AAAAAAAAAgA/G8zotnk89KQ/s1600-h/ListBoxLayoutStates_0%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="ListBoxLayoutStates_0" border="0" alt="ListBoxLayoutStates_0" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SyH4QY8VpfI/AAAAAAAAAgE/k-voBAIklmE/ListBoxLayoutStates_0_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SyH4SfAIW-I/AAAAAAAAAgI/GwqBLhyFsOA/s1600-h/ListBoxLayoutStates_2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="ListBoxLayoutStates_2" border="0" alt="ListBoxLayoutStates_2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SyH4VKj_PoI/AAAAAAAAAgM/D_5M7esDE38/ListBoxLayoutStates_2_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SyH4XfiHkxI/AAAAAAAAAgQ/zLUn4TZjWps/s1600-h/ListBoxLayoutStates_3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="ListBoxLayoutStates_3" border="0" alt="ListBoxLayoutStates_3" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SyH4Z6cnqTI/AAAAAAAAAgU/CXHHJejQDT4/ListBoxLayoutStates_3_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/ListBoxLayoutStatesExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Useful links &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt;&amp;#160;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-animating-items-into-out-of-itemscontrols.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-animating-items-into-out-of-itemscontrols.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-animating-items-into-out-of-itemscontrols.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/" href="http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/Overview/Overview/&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-4816366594873275042?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/4816366594873275042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=4816366594873275042' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4816366594873275042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4816366594873275042'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_11.html' title='New features in Silverlight 4 Beta: Fluid UI States for ItemsControl'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_D_LHhy5fi8o/SyH4QY8VpfI/AAAAAAAAAgE/k-voBAIklmE/s72-c/ListBoxLayoutStates_0_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-5774906256680484245</id><published>2009-12-10T20:44:00.000+01:00</published><updated>2009-12-11T04:54:25.125+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 4 Beta: MouseWheel Support, Clipboard Access &amp; DataGrid Enhancements</title><content type='html'>&lt;p&gt;Today I’ll write some information about clipboard, new features of DataGrid and mouse scrolling.&lt;/p&gt;  &lt;p&gt;Silverlight 4 adds the ability to programmatically access the clipboard to format and modify data during copy, cut, and paste operations (text only). When an attempt is made to programmatically access the clipboard for the first time, Silverlight will prompt the user to request permission. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SyHCAgYKMpI/AAAAAAAAAfo/vvCTmmsiQQQ/s1600-h/clipboard_2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="clipboard_2" border="0" alt="clipboard_2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SyHCHHYvayI/AAAAAAAAAfs/-9VKYDqu7gM/clipboard_2_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SyHCLfOKMpI/AAAAAAAAAfw/0sCeDJekj9s/s1600-h/clipboard_3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="clipboard_3" border="0" alt="clipboard_3" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SyHCQmX_tmI/AAAAAAAAAf0/ZmFXcy2msmQ/clipboard_3_thumb%5B1%5D.png?imgmax=800" width="644" height="222" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You can copy a row of a DataGrid to the clipboard (CTRL + C) and then paste it to another program (f.e Excel). You can control what is copied for a particular column by using the &lt;em&gt;DataColumn.ClipboardContentBinding&lt;/em&gt; property to point to different data if the cell contents aren’t what you want to have copied.&lt;/p&gt;  &lt;p&gt;The DataGrid in Silverlight now has the ability to allow columns to share the remaining width of a DataGrid (*).&amp;#160; It also supports &lt;em&gt;MouseWheel&lt;/em&gt; scrolling and the &lt;em&gt;FlowDirection&lt;/em&gt; property. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SyHCVkdIh4I/AAAAAAAAAf4/jgzN3oUNA_4/s1600-h/clipboard_4%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="clipboard_4" border="0" alt="clipboard_4" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SyHCb0rQB0I/AAAAAAAAAf8/e5BxW1tZDfE/clipboard_4_thumb%5B1%5D.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/ClipboardDataGrid.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/mousewheel-api/" href="http://silverlight.net/learn/videos/all/mousewheel-api/"&gt;http://silverlight.net/learn/videos/all/mousewheel-api/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/" href="http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-mousewheel-support-in-controls.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-mousewheel-support-in-controls.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-mousewheel-support-in-controls.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/dd759034(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/dd759034(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/dd759034(VS.96).aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/accessing-global-clipboard/" href="http://silverlight.net/learn/videos/all/accessing-global-clipboard/"&gt;http://silverlight.net/learn/videos/all/accessing-global-clipboard/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com//learn/courses/Silverlight4/RichTextEditor/RichTextEditor/" href="http://channel9.msdn.com//learn/courses/Silverlight4/RichTextEditor/RichTextEditor/"&gt;http://channel9.msdn.com//learn/courses/Silverlight4/RichTextEditor/RichTextEditor/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.ningzhang.org/2009/11/18/silverlight-clipboard-api/" href="http://www.ningzhang.org/2009/11/18/silverlight-clipboard-api/"&gt;http://www.ningzhang.org/2009/11/18/silverlight-clipboard-api/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/system.windows.clipboard(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/system.windows.clipboard(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/system.windows.clipboard(VS.96).aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/datagrid-enhancements/" href="http://silverlight.net/learn/videos/all/datagrid-enhancements/"&gt;http://silverlight.net/learn/videos/all/datagrid-enhancements/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-data-grid-enhancements.aspx" href="http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-data-grid-enhancements.aspx"&gt;http://mtaulty.com/CommunityServer/blogs/mike_taultys_blog/archive/2009/11/18/silverlight-4-rough-notes-data-grid-enhancements.aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-5774906256680484245?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/5774906256680484245/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=5774906256680484245' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5774906256680484245'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5774906256680484245'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_10.html' title='New features in Silverlight 4 Beta: MouseWheel Support, Clipboard Access &amp;amp; DataGrid Enhancements'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/SyHCHHYvayI/AAAAAAAAAfs/-9VKYDqu7gM/s72-c/clipboard_2_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-2975299738166685042</id><published>2009-12-09T07:49:00.000+01:00</published><updated>2009-12-09T08:51:16.508+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 4 Beta: Dragging Files and Right Click</title><content type='html'>&lt;p&gt;Silverlight version 4 Beta introduces APIs to support dragging a file list to a Silverlight application. You can also handle right-click mouse events and change the behavior (for example show context menu). In this post I’ll show demo with these new features.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Sx9WsZ8c_mI/AAAAAAAAAfA/7HrVzzCsXQ0/s1600-h/silverlight_drag_13.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="silverlight_drag_1" border="0" alt="silverlight_drag_1" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sx9WySESDuI/AAAAAAAAAfM/ZOc-zTDR87w/silverlight_drag_1_thumb1.png?imgmax=800" width="644" height="403" /&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Sx9W2_kXUuI/AAAAAAAAAfY/0wiQPGNpxXA/s1600-h/silverlight_drag_23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="silverlight_drag_2" border="0" alt="silverlight_drag_2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Sx9W8j08zqI/AAAAAAAAAfk/7jUh6-oSsJI/silverlight_drag_2_thumb1.png?imgmax=800" width="644" height="403" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/DropFilesRightClickSample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="left"&gt;There’ re some limitations with current drag and drop implementation. Only file drag and drop is supported. For drag and drop to work on Windows, Silverlight plugin must be windowed (&amp;lt;param name=&amp;quot;windowless&amp;quot; value=&amp;quot;false&amp;quot;/&amp;gt;). In order to use drag-and-drop events for applications hosted by Safari on Macintosh, you must forward the relevant DOM events from your own HTML-level scripting to the specific API of the control.&lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/silverlight-controls-drop-targets/" href="http://silverlight.net/learn/videos/all/silverlight-controls-drop-targets/"&gt;http://silverlight.net/learn/videos/all/silverlight-controls-drop-targets/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/right-click-mouse-events/" href="http://silverlight.net/learn/videos/all/right-click-mouse-events/"&gt;http://silverlight.net/learn/videos/all/right-click-mouse-events/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt;&amp;#160;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/ImageBrowser/ImageBrowser/" href="http://channel9.msdn.com/learn/courses/Silverlight4/ImageBrowser/ImageBrowser/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/ImageBrowser/ImageBrowser/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/" href="http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/"&gt;http://channel9.msdn.com/learn/courses/Silverlight4/PicBrowser/PicBrowser/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.ningzhang.org/2009/11/28/silverlight-drag-and-drop-api/" href="http://www.ningzhang.org/2009/11/28/silverlight-drag-and-drop-api/"&gt;http://www.ningzhang.org/2009/11/28/silverlight-drag-and-drop-api/&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/cc189029(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/cc189029(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/cc189029(VS.96).aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/ee670998(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/ee670998(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee670998(VS.96).aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-2975299738166685042?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/2975299738166685042/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=2975299738166685042' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2975299738166685042'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2975299738166685042'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta_09.html' title='New features in Silverlight 4 Beta: Dragging Files and Right Click'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_D_LHhy5fi8o/Sx9WySESDuI/AAAAAAAAAfM/ZOc-zTDR87w/s72-c/silverlight_drag_1_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-7551582314285229243</id><published>2009-12-08T09:06:00.001+01:00</published><updated>2009-12-09T08:52:18.502+01:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 4'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 4 Beta: WebCam &amp; Printing</title><content type='html'>&lt;p&gt;I’ve been learning new Silverlight 4 for two weeks. I have seen almost all PDC sessions and learning videos. I have read many posts and official documentation. Now I want to test new features by building my own practical examples. I’ll publish them regularly on this blog. Today I’ll write about webcam support and printing.&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;WebCam &amp;amp; Microphone&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/Sx4IAl0jWNI/AAAAAAAAAdY/paQKEG8YFO0/s1600-h/silverlight_webcam_1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="silverlight_webcam_1" border="0" alt="silverlight_webcam_1" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Sx4IcKy2b8I/AAAAAAAAAdk/YkR9QGftu0U/silverlight_webcam_1_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sx4Ij4QZldI/AAAAAAAAAdw/LKPjKgAc8i8/s1600-h/silverlight_webcam_2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="silverlight_webcam_2" border="0" alt="silverlight_webcam_2" src="http://lh4.ggpht.com/_D_LHhy5fi8o/Sx4Iw4km93I/AAAAAAAAAd8/qRKhLx-RQO4/silverlight_webcam_2_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/WebcamMicSample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/access-web-camera-microphone/" href="http://silverlight.net/learn/videos/all/access-web-camera-microphone/"&gt;http://silverlight.net/learn/videos/all/access-web-camera-microphone/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/P09-11" href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/" href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/dd772166(VS.96).aspx#webcam_and_microphone_support" href="http://msdn.microsoft.com/en-us/library/dd772166(VS.96).aspx#webcam_and_microphone_support"&gt;http://msdn.microsoft.com/en-us/library/dd772166(VS.96).aspx#webcam_and_microphone_support&lt;/a&gt;&amp;#160; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Printing&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Sx4I2lex8-I/AAAAAAAAAeM/cLHMpmqTIXY/s1600-h/silverlight_print_1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="silverlight_print_1" border="0" alt="silverlight_print_1" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Sx4I8jZYPpI/AAAAAAAAAec/6cNc8rTJFv0/silverlight_print_1_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sx4I-3rlaxI/AAAAAAAAAeo/Nk2umLSE_nM/s1600-h/silverlight_print_2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="silverlight_print_2" border="0" alt="silverlight_print_2" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sx4JGKIEHjI/AAAAAAAAAe0/WGWqDWSWEpQ/silverlight_print_2_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL4/Beta/PrintingSample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://silverlight.net/learn/videos/all/printing-api-basics/" href="http://silverlight.net/learn/videos/all/printing-api-basics/"&gt;http://silverlight.net/learn/videos/all/printing-api-basics/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/P09-11" href="http://microsoftpdc.com/Sessions/P09-11"&gt;http://microsoftpdc.com/Sessions/P09-11&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&amp;#160;&lt;a title="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/" href="http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/"&gt;http://scorbs.com/2009/11/19/pdc-session-silverlight-4-beta-overview/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://microsoftpdc.com/Sessions/CL19" href="http://microsoftpdc.com/Sessions/CL19"&gt;http://microsoftpdc.com/Sessions/CL19&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.davidpoll.com/2009/11/19/silverlight-4-and-building-business-applications-pdc09-cl19/" href="http://www.davidpoll.com/2009/11/19/silverlight-4-and-building-business-applications-pdc09-cl19/"&gt;http://www.davidpoll.com/2009/11/19/silverlight-4-and-building-business-applications-pdc09-cl19/&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/ee671023(VS.96).aspx" href="http://msdn.microsoft.com/en-us/library/ee671023(VS.96).aspx"&gt;http://msdn.microsoft.com/en-us/library/ee671023(VS.96).aspx&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-7551582314285229243?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/7551582314285229243/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=7551582314285229243' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7551582314285229243'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7551582314285229243'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/12/new-features-in-silverlight-4-beta.html' title='New features in Silverlight 4 Beta: WebCam &amp;amp; Printing'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/Sx4IcKy2b8I/AAAAAAAAAdk/YkR9QGftu0U/s72-c/silverlight_webcam_1_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-8850171101995177797</id><published>2009-10-18T08:51:00.000+02:00</published><updated>2009-10-18T14:39:31.459+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='.Net Ria Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET Dynamic Data'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET MVC'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>My longest post: .NET Ria Services July Preview - summary</title><content type='html'>&lt;p&gt;I have tested many features of &lt;a href="http://go.microsoft.com/fwlink/?LinkId=144609"&gt;.NET Ria Services July Preview&lt;/a&gt; and scenarios for three weeks. I have read&amp;#160; &lt;em&gt;Microsoft .NET RIA Services Overview&lt;/em&gt; document, materials from &lt;a href="http://code.msdn.microsoft.com/RiaServices"&gt;.NET Ria Services Samples&lt;/a&gt; page and excellent &lt;a href="http://blogs.msdn.com/brada/"&gt;Brad Adam's&lt;/a&gt; and &lt;a href="http://www.nikhilk.net/"&gt;Nikhil Kothari’s&lt;/a&gt; blogs.&amp;#160; I have made some my samples which I’ll present them in this post. &lt;/p&gt;  &lt;p&gt;I sign .NET Ria Services features used in my samples:&amp;#160;&amp;#160; &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font color="#ff0000"&gt;New feature of July Preview&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font color="#808000"&gt;Modified feature&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font color="#000000"&gt;&lt;font color="#404040"&gt;Feature known from previous releases&lt;/font&gt;&amp;#160;&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font color="#0000ff"&gt;Extensions from Microsoft samples&lt;/font&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p align="center"&gt;&lt;strong&gt;Business Application Demo&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font color="#ff0000"&gt;The automatic detection of shared code&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font color="#808000"&gt;Operations&lt;/font&gt;       &lt;ul&gt;       &lt;li&gt;&lt;font color="#ff0000"&gt;A new model for handling operations on the client&lt;/font&gt;           &lt;ul&gt;           &lt;li&gt;&lt;font color="#ff0000"&gt;Load/Invoke/Submit operations&lt;/font&gt; &lt;/li&gt;            &lt;li&gt;&lt;font color="#ff0000"&gt;Value that will update itself when the operation completes, callbacks and completed event&lt;/font&gt; &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;&lt;font color="#808000"&gt;Changed signatures for query and update operations&lt;/font&gt; &lt;/li&gt;        &lt;li&gt;&amp;#160;&lt;font color="#ff0000"&gt;POST support for Query operations&lt;/font&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;font color="#808000"&gt;DomainDatasource&lt;/font&gt;       &lt;ul&gt;       &lt;li&gt;&lt;font color="#808000"&gt;Changed parameters&lt;/font&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;font color="#ff0000"&gt;Authentication&lt;/font&gt;       &lt;ul&gt;       &lt;li&gt;&lt;font color="#ff0000"&gt;RiaContext, FormsAuthentication&lt;/font&gt; &lt;/li&gt;        &lt;li&gt;&lt;font color="#808000"&gt;Roles and profiles&lt;/font&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;font color="#808000"&gt;New Silverlight Business Application VS template&lt;/font&gt;       &lt;ul&gt;       &lt;li&gt;&lt;font color="#808000"&gt;Activity and DataForm controls&lt;/font&gt; &lt;/li&gt;        &lt;li&gt;&lt;font color="#808000"&gt;Forms and Windows authentication&lt;/font&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;font color="#ff0000"&gt;Code Generated Hookpoints&lt;/font&gt;       &lt;ul&gt;       &lt;li&gt;&lt;font color="#ff0000"&gt;DomainContext Hookpoints&lt;/font&gt; &lt;/li&gt;        &lt;li&gt;&lt;font color="#ff0000"&gt;Entity Hookpoints&lt;/font&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;font color="#ff0000"&gt;Computed properties&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font color="#ff0000"&gt;Localized error messages&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font color="#ff0000"&gt;Changed validation API&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;ASP.NET: DomainDataSource &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/StsJRiHLrGI/AAAAAAAAAaw/4p330GQzlxY/s1600-h/Activity7.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Activity" border="0" alt="Activity" src="http://lh6.ggpht.com/_D_LHhy5fi8o/StsJiUKdw-I/AAAAAAAAAa0/cVaHgj2s5rk/Activity_thumb3.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/StsJo2HH1ZI/AAAAAAAAAa4/6DjoXt5D6zk/s1600-h/Main3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Main" border="0" alt="Main" src="http://lh5.ggpht.com/_D_LHhy5fi8o/StsJsg8bqOI/AAAAAAAAAa8/jBWHqSU3o_s/Main_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/StsJuxIhExI/AAAAAAAAAbA/q7MZEdNx8m0/s1600-h/Validation3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Validation" border="0" alt="Validation" src="http://lh6.ggpht.com/_D_LHhy5fi8o/StsJ2pSgvvI/AAAAAAAAAbE/l5AXnYDxtPI/Validation_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/StsJ5rBouTI/AAAAAAAAAbI/N7xgQFlq3qQ/s1600-h/Login3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Login" border="0" alt="Login" src="http://lh3.ggpht.com/_D_LHhy5fi8o/StsKDIvflAI/AAAAAAAAAbM/8IzIC5ULVWY/Login_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/StsKFUpEczI/AAAAAAAAAbQ/UC9n8UD9IIY/s1600-h/Registration5.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Registration" border="0" alt="Registration" src="http://lh4.ggpht.com/_D_LHhy5fi8o/StsKJNQ4s2I/AAAAAAAAAbU/ZPoS2rJwElI/Registration_thumb3.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/StsKMz5vNLI/AAAAAAAAAbY/gUX10B3RH4s/s1600-h/Settings13.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Settings1" border="0" alt="Settings1" src="http://lh4.ggpht.com/_D_LHhy5fi8o/StsKY94F8RI/AAAAAAAAAbc/qiBAYk4Bego/Settings1_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/StsKgkvL7kI/AAAAAAAAAbg/8dTRMvFu62E/s1600-h/Settings23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Settings2" border="0" alt="Settings2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/StsKkaIRQNI/AAAAAAAAAbk/5OfD8-D_kTc/Settings2_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/StsKojA_GiI/AAAAAAAAAbo/Ois2VpqCS4E/s1600-h/ASPNET3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="ASPNET" border="0" alt="ASPNET" src="http://lh6.ggpht.com/_D_LHhy5fi8o/StsKtWbFgOI/AAAAAAAAAbs/W6ZZRDtf1v8/ASPNET_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/BusinessApplicationDemo.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Server validation &amp;amp;&amp;#160; resolving concurrency conflicts &lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/StsKwXn5zVI/AAAAAAAAAbw/3I35p-KJAHE/s1600-h/Concurrency3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Concurrency" border="0" alt="Concurrency" src="http://lh3.ggpht.com/_D_LHhy5fi8o/StsK1Xe-1-I/AAAAAAAAAb0/fSTQc5A3kUw/Concurrency_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/ConflictsExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Windows Authentication&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/StsK7BcaXNI/AAAAAAAAAb4/NMqWPaST6xw/s1600-h/WindowsAuth3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="WindowsAuth" border="0" alt="WindowsAuth" src="http://lh3.ggpht.com/_D_LHhy5fi8o/StsLAmLNQ5I/AAAAAAAAAb8/K2yrVOqEQjc/WindowsAuth_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&amp;#160;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/WindowsAuthentication.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;A Https Enabled DomainService&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/HttpsExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;DomainContext: cross-domain scenario&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/CrossDomainExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Loading Data from Related Entities&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Returning Related Entities &lt;/li&gt;    &lt;li&gt;Denormalizing Associated Data &lt;/li&gt; &lt;/ul&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/IncludeExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Hierarchical Data&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;Returning Related Entities&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;font color="#ff0000"&gt;Computed properties&lt;/font&gt;&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align="center"&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/StsLFRwKiSI/AAAAAAAAAcA/TXsK4kEQjnk/s1600-h/Hierarchy3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Hierarchy" border="0" alt="Hierarchy" src="http://lh5.ggpht.com/_D_LHhy5fi8o/StsLKqhj2aI/AAAAAAAAAcE/YGPuDGbjZHg/Hierarchy_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&amp;#160;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/HierarchicalDataExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Multiple DomainContexts&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;Cross-DomainContext references: associations with entities originating from different DomainContext &lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/MultipleDomainContextsExamples.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;.NET RIA Services Class Libraries&lt;/strong&gt;&amp;#160; &lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font color="#ff0000"&gt;.NET Ria Services Class Library VS template&lt;/font&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p align="center"&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/StsLLtT9kqI/AAAAAAAAAcI/u2fjQBpAHXg/s1600-h/Presentation1%5B5%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px" title="Presentation1" border="0" alt="Presentation1" src="http://lh6.ggpht.com/_D_LHhy5fi8o/StsLMrC8gXI/AAAAAAAAAcM/yDe5slpdU18/Presentation1_thumb%5B3%5D.png?imgmax=800" width="434" height="199" /&gt;&lt;/a&gt; &lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/RIAServicesLibrariesDemo.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Out of browser Silverlight client&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/StsLR_3kHvI/AAAAAAAAAcQ/A2wd1RCWU_8/s1600-h/Out3.png"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="Out" border="0" alt="Out" src="http://lh6.ggpht.com/_D_LHhy5fi8o/StsLcYwRrTI/AAAAAAAAAcU/fj9Q6QQE58c/Out_thumb1.png?imgmax=800" width="644" height="388" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/OutOfBrowserExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;ASP.NET Dynamic Data integration&lt;/strong&gt;&lt;/p&gt;  &lt;p align="left"&gt;Required &lt;a href="http://aspnet.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=27026"&gt;ASP.NET Dynamic Data Preview 4 Refresh&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/StsLiOVj4-I/AAAAAAAAAcY/8wMfQM26DrI/s1600-h/DynamicData13.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="DynamicData1" border="0" alt="DynamicData1" src="http://lh6.ggpht.com/_D_LHhy5fi8o/StsLq29XfMI/AAAAAAAAAcc/IVrTYldDokU/DynamicData1_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/StsLsryUZBI/AAAAAAAAAcg/YKH6nradP_Q/s1600-h/DynamicData23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="DynamicData2" border="0" alt="DynamicData2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/StsLu6xedYI/AAAAAAAAAck/s34UDcAk_ZI/DynamicData2_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&amp;#160; &lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/ASPNetDynamicDataExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;AJAX client&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/StsLw44_H9I/AAAAAAAAAco/lZ1KQzVNrHQ/s1600-h/AJAX3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="AJAX" border="0" alt="AJAX" src="http://lh3.ggpht.com/_D_LHhy5fi8o/StsLzL3fVZI/AAAAAAAAAcs/ZTKmnxqmkNk/AJAX_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/AjaxExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;font color="#0000ff"&gt;&lt;strong&gt;ASP.NET MVC&amp;#160; integration&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font color="#0000ff"&gt;DomainServiceProxy&lt;/font&gt; (you can download it from TechEd South Africa &lt;a href="http://cid-0f7c196209c3d0bb.skydrive.live.com/self.aspx/.Public/TechEd%20South%20Africa%20^409/RIAServices.zip"&gt;Ria Services samples&lt;/a&gt;)&lt;/li&gt;    &lt;li&gt;You need to register the &lt;a href="http://aspnet.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=24471#DownloadId=61772"&gt;DataAnnotations Model Binder&lt;/a&gt; in the Global.asax&lt;/li&gt; &lt;/ul&gt;  &lt;p align="center"&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/StsL2IPPSkI/AAAAAAAAAcw/3JPh94Ys8-M/s1600-h/MVC13.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MVC1" border="0" alt="MVC1" src="http://lh6.ggpht.com/_D_LHhy5fi8o/StsL5kWQ9XI/AAAAAAAAAc0/AkHiWE15bIY/MVC1_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/StsL7umIvjI/AAAAAAAAAc4/-eIPDQJ5_Oc/s1600-h/MVC23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MVC2" border="0" alt="MVC2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/StsL-VAQwBI/AAAAAAAAAc8/k43hrlLGVDc/MVC2_thumb1.png?imgmax=800" width="644" height="404" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/ASPNetMvcExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Exposing DomainService as DataService (&lt;/strong&gt;&lt;/font&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Domain ADO.NET Data Service)&lt;/strong&gt;&amp;#160; &lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font color="#ff0000"&gt;Domain ADO.NET Data Service VS template&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font color="#ff0000"&gt;WPF client (and other full .NET client)&lt;/font&gt; &lt;/li&gt;    &lt;li&gt;&lt;font color="#ff0000"&gt;Silverlight client&lt;/font&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Silverlight client doesn’t work for me (I have built the sample described in &lt;em&gt;Microsoft .NET RIA Services Overview&lt;/em&gt;). If you know what should be done to fix it, please write to me. &lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/StsMFoOQzUI/AAAAAAAAAdA/rIaR09E5tM4/s1600-h/Wpf3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Wpf" border="0" alt="Wpf" src="http://lh4.ggpht.com/_D_LHhy5fi8o/StsMOiKSmTI/AAAAAAAAAdE/DM8Si-5GIqA/Wpf_thumb1.png?imgmax=800" width="644" height="435" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/ProductsWithDataService.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;font color="#0000ff"&gt;&lt;strong&gt;Exposing DomainService as WCF service&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font color="#0000ff"&gt;DomainServiceProxy&lt;/font&gt; (you can download it from TechEd South Africa &lt;a href="http://cid-0f7c196209c3d0bb.skydrive.live.com/self.aspx/.Public/TechEd%20South%20Africa%20^409/RIAServices.zip"&gt;Ria Services samples&lt;/a&gt;)&lt;/li&gt; &lt;/ul&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/WCFServiceWithDomainProxyExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;ADO .NET Data Services Based Data Source&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/DataServiceStoreExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;WCF Based Data Source&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/WCFDataSourceExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;DataSet Based Data Source&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/DataSetExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;NHibernate Based Data Source&lt;/strong&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/NHibernateExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;&lt;font color="#0000ff"&gt;Offline&lt;/font&gt; &lt;font color="#0000ff"&gt;synchronization&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;&lt;font color="#0000ff"&gt;LocalSyncBehavior&lt;/font&gt;&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;&lt;font color="#0000ff"&gt;ServerSyncBehavior&lt;/font&gt;&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align="left"&gt;You need attach these behaviors to DomainContext. You can download them&amp;#160; from TechEd South Africa &lt;a href="http://cid-0f7c196209c3d0bb.skydrive.live.com/self.aspx/.Public/TechEd%20South%20Africa%20^409/RIAServices.zip"&gt;Ria Services samples&lt;/a&gt;.&lt;/p&gt;  &lt;p align="left"&gt;I haven’t verified if ServerSyncBehavior worked well. If you know how it works , please write to me. &lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/StsMU4V7GOI/AAAAAAAAAdI/zrxdrRNUZPg/s1600-h/Offline13.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Offline1" border="0" alt="Offline1" src="http://lh4.ggpht.com/_D_LHhy5fi8o/StsMec_f-cI/AAAAAAAAAdM/7oNVJs9qf0E/Offline1_thumb1.png?imgmax=800" width="644" height="435" /&gt;&lt;/a&gt;&amp;#160;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/RIA/July09^_Preview/OfflineExample.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="left"&gt;Other useful samples I have found:&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2390"&gt;POCO&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Authentication      &lt;ul&gt;       &lt;li&gt;with custom database          &lt;ul&gt;           &lt;li&gt;&lt;font color="#ff0000"&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2661"&gt;Custom authentication service&lt;/a&gt; (IAuthentication&amp;lt;User&amp;gt;)&lt;/font&gt; &lt;/li&gt;            &lt;li&gt;&lt;a href="http://blogs.msdn.com/brada/archive/2009/07/22/business-apps-example-for-silverlight-3-rtm-and-net-ria-services-july-update-part-6-poco-and-authentication-provider.aspx"&gt;Custom ASP.NET MembershipProvider&lt;/a&gt; &lt;/li&gt;         &lt;/ul&gt;       &lt;/li&gt;        &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2661"&gt;Offline Authentication&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2661"&gt;Windows Live ID Authentication&lt;/a&gt; &lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2807"&gt;Pattern: Repository &amp;amp; unit tests&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/brada/archive/2009/07/16/business-apps-example-for-silverlight-3-rtm-and-net-ria-services-july-update-part-6-data-transfer-objects-dtos.aspx"&gt;Pattern: Data Transfer Objects (DTOs)&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/brada/archive/2009/09/07/business-apps-example-for-silverlight-3-rtm-and-net-ria-services-july-update-viewmodel.aspx"&gt;Pattern: ViewModel&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2659"&gt;XML Metadata Provider&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/brada/archive/2009/08/04/business-apps-example-for-silverlight-3-rtm-and-net-ria-services-july-update-part-xx-custom-linq-provider.aspx"&gt;Custom Linq Provider&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://code.msdn.microsoft.com/RiaServices/Release/ProjectReleases.aspx?ReleaseId=2660"&gt;Custom Domain Service Type&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;Azure      &lt;ul&gt;       &lt;li&gt;&lt;a href="http://blogs.msdn.com/brada/archive/2009/08/21/business-apps-example-for-silverlight-3-rtm-and-net-ria-services-july-update-part-23-azure.aspx"&gt;Web application on Windows Azure +&amp;#160; Sql Azure data&lt;/a&gt; &lt;/li&gt;        &lt;li&gt;&lt;a href="http://cid-0f7c196209c3d0bb.skydrive.live.com/self.aspx/.Public/TechEd%20South%20Africa%20^409/RIAServices.zip"&gt;Windows Azure Table (AzureDomainService)&lt;/a&gt;&lt;/li&gt;     &lt;/ul&gt;   &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/brada/archive/2009/08/11/business-apps-example-for-silverlight-3-rtm-and-net-ria-services-july-update-part-22-separate-solution-files.aspx"&gt;Separate Solution Files&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-8850171101995177797?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/8850171101995177797/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=8850171101995177797' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8850171101995177797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8850171101995177797'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/10/my-longest-post-net-ria-services-july.html' title='My longest post: .NET Ria Services July Preview - summary'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/StsJiUKdw-I/AAAAAAAAAa0/cVaHgj2s5rk/s72-c/Activity_thumb3.png?imgmax=800' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-5751967635237890046</id><published>2009-09-22T22:17:00.000+02:00</published><updated>2009-09-22T23:29:33.787+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 3: Out-of-Browser Applications &amp; Application Library Caching</title><content type='html'>&lt;p&gt;Expression Blend 3 supports &lt;em&gt;out-of-browser applications&lt;/em&gt; and &lt;em&gt;application library caching&lt;/em&gt;. In July I wrote about these Silverlight 3 features &lt;a href="http://martinkruszynski.blogspot.com/2009/07/new-features-in-silverlight-3-out-of.html"&gt;here&lt;/a&gt; and &lt;a href="http://martinkruszynski.blogspot.com/2009/07/new-features-in-silverlight-3.html"&gt;here&lt;/a&gt;. In this post I’ll show how easy is to use them in new Blend.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Out-of-Browser Applications&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;You can configure a Silverlight application to run outside the browser, by using the &lt;em&gt;Silverlight Project Options –&amp;gt; Enable Application Outside Browser&lt;/em&gt; on the &lt;em&gt;Project&lt;/em&gt; menu.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SrlBahRk_KI/AAAAAAAAAaY/ypxG_UXZYSs/s1600-h/OutOfBrowser%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="OutOfBrowser" border="0" alt="OutOfBrowser" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SrlBeaPzsUI/AAAAAAAAAac/NZ0jCdiqv_w/OutOfBrowser_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Below you see the dialog box that appears when you try to run project first time.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SrlBiCWkKBI/AAAAAAAAAag/V0bE_pLJo5w/s1600-h/OutOfBrowser2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="OutOfBrowser2" border="0" alt="OutOfBrowser2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SrlBmZgmQSI/AAAAAAAAAak/yXexPJEb1WE/OutOfBrowser2_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Application Library Caching&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;You can configure a Silverlight application to cache library extensions by using the &lt;em&gt;Silverlight Project Options&lt;/em&gt; –&amp;gt; &lt;em&gt;Use Application Library Caching&lt;/em&gt; on the &lt;em&gt;Project&lt;/em&gt; menu.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SrlBqeK1FtI/AAAAAAAAAao/DptmfBm4Jy4/s1600-h/LibraryCaching%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="LibraryCaching" border="0" alt="LibraryCaching" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SrlBvPN_62I/AAAAAAAAAas/XrIMtSZCCkk/LibraryCaching_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;Application Outside of Browser&lt;/em&gt; and &lt;em&gt;Application Library Caching&lt;/em&gt; are cool but they can't be used at the same time because application library caching uses the Internet cache of the browser.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-5751967635237890046?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/5751967635237890046/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=5751967635237890046' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5751967635237890046'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5751967635237890046'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/09/expression-blend-3-out-of-browser.html' title='Expression Blend 3: Out-of-Browser Applications &amp;amp; Application Library Caching'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/SrlBeaPzsUI/AAAAAAAAAac/NZ0jCdiqv_w/s72-c/OutOfBrowser_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-1430319323537072171</id><published>2009-09-20T20:27:00.000+02:00</published><updated>2009-09-22T09:24:20.380+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 3: Effects, Projections 3D &amp; some improvements</title><content type='html'>&lt;p&gt;New Blend supports new Silverlight 3 features such as effects and projections. Today I’ll show it and I’ll describe some Blend improvements in animation and template support I haven’t described yet.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Effects&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I have written &lt;a href="http://martinkruszynski.blogspot.com/2009/07/new-features-in-silverlight-3-pixel.html"&gt;post&lt;/a&gt; about effects. Below I show how to use them in Blend.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Srh5rvPMK5I/AAAAAAAAAY8/5FSrveRNOWA/s1600-h/Effect13.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Effect1" border="0" alt="Effect1" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Srh50759scI/AAAAAAAAAZA/R7Art-D1K1A/Effect1_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Srh59LuQeYI/AAAAAAAAAZE/69-Z4vfJQds/s1600-h/Effect23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Effect2" border="0" alt="Effect2" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Srh6GvLEosI/AAAAAAAAAZI/2Ffif8S3GYo/Effect2_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Projections 3D&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I have written &lt;a href="http://martinkruszynski.blogspot.com/2009/07/new-features-in-silverlight-3-datagrid.html"&gt;post&lt;/a&gt; about projections. Below I show how to define them in Blend.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Srh6l3iF_hI/AAAAAAAAAZM/3rMt4klxdwg/s1600-h/Projection3D3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Projection3D" border="0" alt="Projection3D" src="http://lh4.ggpht.com/_D_LHhy5fi8o/Srh6qzmIQII/AAAAAAAAAZQ/jaziSWaUYvI/Projection3D_thumb1.png?imgmax=800" width="644" height="460" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Animation: Record Current Value&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In a Silverlight project, you can record keyframes for many more properties than before. There is a new menu command, &lt;em&gt;Record Current Value&lt;/em&gt;, on the &lt;em&gt;Advanced property options&lt;/em&gt; menu.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Srh6u2sSyMI/AAAAAAAAAZU/eqtJPwjQpwI/s1600-h/AnimationCurrentValue13.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="AnimationCurrentValue1" border="0" alt="AnimationCurrentValue1" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Srh60JmG9AI/AAAAAAAAAZY/T500QAY9__M/AnimationCurrentValue1_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Srh64dHcEGI/AAAAAAAAAZc/ilsARSq0CQk/s1600-h/AnimationCurrentValue23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="AnimationCurrentValue2" border="0" alt="AnimationCurrentValue2" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Srh69G_OxOI/AAAAAAAAAZg/aOmqa3jmHEk/AnimationCurrentValue2_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Animation: Resource values&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;With new Blend you can animate to and from some resources, too. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Animation: Timeline improvements&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Timeline improvements has been &lt;a href="http://blogs.msdn.com/expression/archive/2009/09/02/keyframe-marquee-selection-and-other-timeline-tips.aspx"&gt;described&lt;/a&gt; by Expression Team. With new Blend you can draw a marquee around keyframes to select all the keyframes that fall within it.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Srh7Ae83WJI/AAAAAAAAAZk/y4z3aSQtWMU/s1600-h/AnimationSelectAll%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="AnimationSelectAll" border="0" alt="AnimationSelectAll" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Srh7ESYrL6I/AAAAAAAAAZo/q7jfO7vyd44/AnimationSelectAll_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You can use the new blue drag-handles on the animation bars to move the start and end times of the animation, and the times of the keyframes within it will be scaled up or down accordingly. You can also click and drag on the gray background of the animation bar to shift the whole animation in time.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Srh7HfQoh2I/AAAAAAAAAZs/g-36QFpa23E/s1600-h/AnimationBarScale1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="AnimationBarScale1" border="0" alt="AnimationBarScale1" src="http://lh4.ggpht.com/_D_LHhy5fi8o/Srh7K3nU-7I/AAAAAAAAAZw/cP4YP4AABPo/AnimationBarScale1_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Srh7N6OKVZI/AAAAAAAAAZ0/SXTeqZOyScY/s1600-h/AnimationBarScale2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="AnimationBarScale2" border="0" alt="AnimationBarScale2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Srh7RacwbKI/AAAAAAAAAZ4/u3l7YY_p_6Q/AnimationBarScale2_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Srh7UmwOMWI/AAAAAAAAAZ8/8MfgPC6CKJg/s1600-h/AnimationBarTranslate%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="AnimationBarTranslate" border="0" alt="AnimationBarTranslate" src="http://lh4.ggpht.com/_D_LHhy5fi8o/Srh7X5n0cMI/AAAAAAAAAaA/awBKL90JlZA/AnimationBarTranslate_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL3/RTW/Samples/Expression/AnimationImprovements.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Easier Access to Template Internals&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;If a control includes templates that are applied in specific scenarios, such as when a control has to display a collection of data, those templates now appear in the &lt;em&gt;Edit Other Templates&lt;/em&gt; menu.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Srh7b4CJYfI/AAAAAAAAAaE/yz9m0DwmJZI/s1600-h/OtherTemplatesBlend2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="OtherTemplatesBlend2" border="0" alt="OtherTemplatesBlend2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Srh7fyWtcmI/AAAAAAAAAaI/x3WhX9tWhcU/OtherTemplatesBlend2_thumb%5B1%5D.png?imgmax=800" width="644" height="442" /&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Srh7kFy4j5I/AAAAAAAAAaM/y0GmF0SUHKo/s1600-h/OtherTemplatesBlend3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="OtherTemplatesBlend3" border="0" alt="OtherTemplatesBlend3" src="http://lh4.ggpht.com/_D_LHhy5fi8o/Srh7oevKKuI/AAAAAAAAAaU/_Zjp4VVxfMc/OtherTemplatesBlend3_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-1430319323537072171?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/1430319323537072171/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=1430319323537072171' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/1430319323537072171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/1430319323537072171'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/09/expression-blend-3-effects-projections.html' title='Expression Blend 3: Effects, Projections 3D &amp;amp; some improvements'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/Srh50759scI/AAAAAAAAAZA/R7Art-D1K1A/s72-c/Effect1_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-5514625831173965402</id><published>2009-09-19T21:03:00.000+02:00</published><updated>2009-09-21T21:00:25.342+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3 SDK'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 3: Support for the Silverlight Visual State Manager</title><content type='html'>&lt;p&gt;In Expression Blend 3, support for the Silverlight Visual State Manager (VSM)&amp;#160; has been improved. In this post I’ll show five new features.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Drawing into state&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;When you select a state and draw a new element, the new element will be visible only in the selected state at runtime.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SrfLWTd0cGI/AAAAAAAAAXQ/mZDuUJ_lq_I/s1600-h/DrawIntoState1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="DrawIntoState1" border="0" alt="DrawIntoState1" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SrfLbAzuCxI/AAAAAAAAAXU/G6FMzsOmeOQ/DrawIntoState1_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SrfLf7ztXMI/AAAAAAAAAXY/ABOv_MTO6no/s1600-h/DrawIntoState2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="DrawIntoState2" border="0" alt="DrawIntoState2" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SrfLluGOsnI/AAAAAAAAAXc/Vw4_lPaazZA/DrawIntoState2_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SrfLpqMKkjI/AAAAAAAAAXg/jLWznBKzLdo/s1600-h/DrawIntoState3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="DrawIntoState3" border="0" alt="DrawIntoState3" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SrfLtifRPYI/AAAAAAAAAXk/nZeG0w_bxqU/DrawIntoState3_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="left"&gt;&lt;strong&gt;State pinning&lt;/strong&gt; &lt;/p&gt;  &lt;p&gt;You can pin a preview of one state in a state group while modifying another state in a different state group.&lt;/p&gt;  &lt;p align="left"&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SrfLxZsMB-I/AAAAAAAAAXs/pf3YBpf8CCk/s1600-h/Pinning1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Pinning1" border="0" alt="Pinning1" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SrfL1ur0U7I/AAAAAAAAAXw/4vRdNOgF9ck/Pinning1_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SrfL5vgLL9I/AAAAAAAAAX0/BqWBYIHtN2k/s1600-h/Pinning2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Pinning2" border="0" alt="Pinning2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SrfL-E-2y4I/AAAAAAAAAX4/OpWk88PoX2A/Pinning2_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="left"&gt;&lt;strong&gt;Editing transitions&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;You can select the storyboard for a state transition and modify it in the &lt;em&gt;Objects and Timeline&lt;/em&gt; panel.&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SrfMBBDZvkI/AAAAAAAAAX8/8GKouoI4SFo/s1600-h/TransitionEdit%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="TransitionEdit" border="0" alt="TransitionEdit" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SrfME38zN_I/AAAAAAAAAYA/Jh4r5C1MaoI/TransitionEdit_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Previewing transitions&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;You can preview transitions by clicking &lt;em&gt;Turn on transition preview&lt;/em&gt; in the &lt;em&gt;States&lt;/em&gt; panel. When transition preview is on, each time you change your selection from one state to another, the currently-defined transition between those two states plays out on the artboard just as it will at run time.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SrfMI8jEkpI/AAAAAAAAAYE/3riDOSSpe6k/s1600-h/TransitionPreview1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="TransitionPreview1" border="0" alt="TransitionPreview1" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SrfMM1eShnI/AAAAAAAAAYI/Xy-rULCiIk8/TransitionPreview1_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SrfMQKmH4-I/AAAAAAAAAYM/g4MvpAeqd20/s1600-h/TransitionPreview2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="TransitionPreview2" border="0" alt="TransitionPreview2" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SrfMT4pQf8I/AAAAAAAAAYQ/2kIzNdxLhpQ/TransitionPreview2_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SrfMXUKsv8I/AAAAAAAAAYU/k4JQviG0Xow/s1600-h/TransitionPreview3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="TransitionPreview3" border="0" alt="TransitionPreview3" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SrfMbKtuUZI/AAAAAAAAAYY/HNXLjQdQ-Mg/TransitionPreview3_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;FluidLayout&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In previous versions of Expression Blend, if you changed such properties as the &lt;em&gt;Row&lt;/em&gt;, &lt;em&gt;Column&lt;/em&gt;, &lt;em&gt;ColumnSpan&lt;/em&gt;, or &lt;em&gt;RowSpan&lt;/em&gt; of an object in different states, the change would be instantaneous, even if a transition duration was specified. By selecting &lt;em&gt;Turn on FluidLayout&lt;/em&gt;, you can make an object move smoothly from one cell in a &lt;em&gt;Grid&lt;/em&gt; layout panel to another.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SrfMeaDlppI/AAAAAAAAAYc/KwWmU_DuRkU/s1600-h/FluidLayout1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="FluidLayout1" border="0" alt="FluidLayout1" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SrfMhNpyhpI/AAAAAAAAAYg/OoWNF0ZhJDc/FluidLayout1_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SrfMkaLXvrI/AAAAAAAAAYk/fhpTpG2ItrE/s1600-h/FluidLayout2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="FluidLayout2" border="0" alt="FluidLayout2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SrfMnuHY6TI/AAAAAAAAAYo/EVS32zIhap0/FluidLayout2_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SrfMqna0QDI/AAAAAAAAAYs/9pVbpW0VYWo/s1600-h/FluidLayout3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="FluidLayout3" border="0" alt="FluidLayout3" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SrfMtyholNI/AAAAAAAAAYw/DcnIFDpREGo/FluidLayout3_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SrfMyqysk-I/AAAAAAAAAY0/4pCtTcpyYms/s1600-h/FluidLayout4%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="FluidLayout4" border="0" alt="FluidLayout4" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SrfM4Ii3ueI/AAAAAAAAAY4/Z4y84iaLePk/FluidLayout4_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL3/RTW/Samples/Expression/VSM.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;There are also other improvements. You can see states for controls, regardless of whether those states were defined in your XAML file originally. The &lt;em&gt;States&lt;/em&gt; panel displays a warning when a property has been changed in more than one state group.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-5514625831173965402?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/5514625831173965402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=5514625831173965402' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5514625831173965402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/5514625831173965402'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/09/expression-blend-3-support-for.html' title='Expression Blend 3: Support for the Silverlight Visual State Manager'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/SrfLbAzuCxI/AAAAAAAAAXU/G6FMzsOmeOQ/s72-c/DrawIntoState1_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-4513973924335467107</id><published>2009-09-17T21:54:00.000+02:00</published><updated>2009-09-18T08:47:44.006+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 3: Creating templates from artwork</title><content type='html'>&lt;p&gt;With Expression Blend 3&lt;em&gt;,&lt;/em&gt; you can use the modified &lt;em&gt;Make Into Control&lt;/em&gt; command to select artwork on the artboard and to convert it into a control template for a control. Read this post.&lt;/p&gt;  &lt;p&gt;Expression team has written excellent &lt;a href="http://blogs.msdn.com/expression/archive/2009/09/09/silverlight-control-styling-tips-articles.aspx"&gt;post&lt;/a&gt; about this feature of&amp;#160; new Blend.&amp;#160; You can also read about it in &lt;em&gt;Blend User Guide&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Smart Make Into ContentControl (f.e &lt;/strong&gt;&lt;strong&gt;Button)&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;When you use &lt;em&gt;Make Into Control&lt;/em&gt; to turn artwork containing a &lt;em&gt;TextBlock&lt;/em&gt; object into a template for a &lt;em&gt;ContentControl&lt;/em&gt; (buttons and so on), Blend does the following for you:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Put a &lt;em&gt;ContentPresenter&lt;/em&gt; into the template in place of the &lt;em&gt;TextBlock&lt;/em&gt;. &lt;/li&gt;    &lt;li&gt;Copy layout properties from the &lt;em&gt;TextBlock&lt;/em&gt; to the &lt;em&gt;ContentPresenter&lt;/em&gt;. &lt;/li&gt;    &lt;li&gt;Copy Typography properties from the &lt;em&gt;TextBlock&lt;/em&gt; (f.e &lt;em&gt;Foreground&lt;/em&gt;)&lt;em&gt; &lt;/em&gt;to the control &lt;em&gt;Style&lt;/em&gt;. &lt;/li&gt;    &lt;li&gt;Copy the &lt;em&gt;Text&lt;/em&gt; property from the &lt;em&gt;TextBlock&lt;/em&gt; to the control instance’s &lt;em&gt;Content&lt;/em&gt; property. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SrMr0lQN93I/AAAAAAAAAWA/iy9yY2N2yFw/s1600-h/Button1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Button1" border="0" alt="Button1" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SrMr46FMsLI/AAAAAAAAAWE/OvFWzctImJ0/Button1_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SrMr9UR1oTI/AAAAAAAAAWI/5XuIYIxEk_A/s1600-h/Button2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Button2" border="0" alt="Button2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SrMsCgP_H5I/AAAAAAAAAWM/XdZXHOyVx9A/Button2_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SrMsFWCqOgI/AAAAAAAAAWQ/siVDtYbL2Bs/s1600-h/Button3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Button3" border="0" alt="Button3" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SrMsJCCV5QI/AAAAAAAAAWU/ZxZ5R05Uvnk/Button3_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Smart Make Into TextBox&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;When you use &lt;em&gt;Make Into Control&lt;/em&gt; to turn artwork containing a &lt;em&gt;TextBlock&lt;/em&gt; object into a template for a &lt;em&gt;TextBox&lt;/em&gt;, Blend does the following for you:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Put a &lt;em&gt;ScrollViewer&lt;/em&gt; representing the &lt;em&gt;ContentElement&lt;/em&gt; part into the template in place of the &lt;em&gt;TextBlock&lt;/em&gt;. &lt;/li&gt;    &lt;li&gt;Copy layout properties from the &lt;em&gt;TextBlock&lt;/em&gt; to the &lt;em&gt;ContentElement&lt;/em&gt; part. &lt;/li&gt;    &lt;li&gt;Copy &lt;em&gt;Typography&lt;/em&gt; properties from the &lt;em&gt;TextBlock&lt;/em&gt; (f.e&lt;em&gt; Foreground&lt;/em&gt;) to the &lt;em&gt;TextBox&lt;/em&gt; Style. &lt;/li&gt;    &lt;li&gt;Copy the &lt;em&gt;Text&lt;/em&gt; property from the &lt;em&gt;TextBlock&lt;/em&gt; to the &lt;em&gt;TextBox&lt;/em&gt; instance. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SrMsMvAAzkI/AAAAAAAAAWY/oOxRQJvFqtw/s1600-h/TextBox1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="TextBox1" border="0" alt="TextBox1" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SrMsQ54J-WI/AAAAAAAAAWc/tasOK1UKJC4/TextBox1_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SrMsT5CMJYI/AAAAAAAAAWg/weKe7Esa75c/s1600-h/TextBox3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="TextBox3" border="0" alt="TextBox3" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SrMsXQAzwmI/AAAAAAAAAWk/EIhZUPMhL-Q/TextBox3_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Controls with template parts (f.e Slider)&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;In a Silverlight project, &lt;em&gt;Make Into Part&lt;/em&gt; command and &lt;em&gt;Parts&lt;/em&gt; panel are very useful for creating templates for controls with template parts.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SrMsa3HoR9I/AAAAAAAAAWo/6gebpQUAYtk/s1600-h/Slider%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Slider" border="0" alt="Slider" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SrMsfPmbHQI/AAAAAAAAAWs/nYwCZz14kCg/Slider_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;You can right-click objects in your template and click &lt;em&gt;Make Into Part&lt;/em&gt; to assign objects in your control to specific roles. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SrMsizjfqNI/AAAAAAAAAWw/4kG7K8Oxe-I/s1600-h/Slider3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Slider3" border="0" alt="Slider3" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SrMsnvrFZqI/AAAAAAAAAW0/fDNoo_viDXg/Slider3_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SrMsrmovDmI/AAAAAAAAAW4/kBYOze-VRmM/s1600-h/Slider4%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Slider4" border="0" alt="Slider4" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SrMswkJOuuI/AAAAAAAAAW8/mrskLjPrJN0/Slider4_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The &lt;em&gt;Parts&lt;/em&gt; panel makes it easy to manage and create the parts (double-click) required by a control template. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SrMs00axrHI/AAAAAAAAAXA/RuqfyBdMBac/s1600-h/Slider7%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Slider7" border="0" alt="Slider7" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SrMs53tTmZI/AAAAAAAAAXE/6LFdhcz64ts/Slider7_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SrMs-QvmZ3I/AAAAAAAAAXI/jMQAjKZnOwc/s1600-h/Slider8%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Slider8" border="0" alt="Slider8" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SrMtDRkzcjI/AAAAAAAAAXM/3oHkZFvAL1M/Slider8_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL3/RTW/Samples/Expression/CreateFromArtwork.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-4513973924335467107?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/4513973924335467107/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=4513973924335467107' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4513973924335467107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4513973924335467107'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/09/expression-blend-3-creating-templates.html' title='Expression Blend 3: Creating templates from artwork'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_D_LHhy5fi8o/SrMr46FMsLI/AAAAAAAAAWE/OvFWzctImJ0/s72-c/Button1_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-7624075829186055442</id><published>2009-09-14T21:27:00.000+02:00</published><updated>2009-09-15T07:44:53.994+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 3: Gradient Tool, Tile Brush &amp; Easing Functions</title><content type='html'>&lt;p&gt;Blend 3 has new gradient tool with many improvements. Using Tile Brush in Silverlight 3 we can use images as background in a very easy way. &lt;a href="http://martinkruszynski.blogspot.com/2009/07/new-features-in-silverlight-3-pixel.html"&gt;Easing functions&lt;/a&gt; are very easy, too. In this post I’ll show these features of new Blend. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Gradient Tool&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/Sq8lTzbtG3I/AAAAAAAAAVE/e3CU66td9QE/s1600-h/GradientTool_13.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="GradientTool_1" border="0" alt="GradientTool_1" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Sq8mZ4KPBLI/AAAAAAAAAVI/9KQ4_whusYU/GradientTool_1_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sq8nFigBF8I/AAAAAAAAAVM/aaSWo5rThE4/s1600-h/GradientTool_23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="GradientTool_2" border="0" alt="GradientTool_2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Sq8nOj87L_I/AAAAAAAAAVQ/1YGiAPWxhBc/GradientTool_2_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sq8nqkExccI/AAAAAAAAAVY/FXOJyOVaPKE/s1600-h/GradientTool_33.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="GradientTool_3" border="0" alt="GradientTool_3" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sq8nz9NYv9I/AAAAAAAAAVc/Foo6HnERquY/GradientTool_3_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Tile Brush&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Sq8n_Ux8pmI/AAAAAAAAAVg/g67pXh7MEYQ/s1600-h/TileBrush3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="TileBrush" border="0" alt="TileBrush" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sq8oN6IY9cI/AAAAAAAAAVk/wO50EtPBIgE/TileBrush_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL3/RTW/Samples/Expression/TileBrush.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Easing Functions&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/Sq8oYeaPOjI/AAAAAAAAAVo/6H2m7O_E5uk/s1600-h/EasingFunction3.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="EasingFunction" border="0" alt="EasingFunction" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sq8oiNXbhvI/AAAAAAAAAVs/NHah_LI3voI/EasingFunction_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL3/RTW/Samples/Expression/EasingFunctionKeyFrame.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;Some useful links&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blogs.msdn.com/expression/archive/2009/04/08/creating-and-editing-gradients-in-expression-blend-3-preview.aspx"&gt;Creating and Editing Gradients in Expression Blend 3 Preview&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.c-sharpcorner.com/UploadFile/dpatra/TileBrushInSilverlight3ApplicationInBlend307262009122659PM/TileBrushInSilverlight3ApplicationInBlend3.aspx"&gt;Tile Brush in Silverlight 3 Application in Blend 3&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.kirupa.com/blend_silverlight/easing_functions_blend_pg1.htm"&gt;Easing Functions in Blend - Page 1&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.kirupa.com/blend_silverlight/easing_functions_blend_pg2.htm"&gt;Easing Functions in Blend - Page 2&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-7624075829186055442?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/7624075829186055442/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=7624075829186055442' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7624075829186055442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7624075829186055442'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/09/expression-blend-3-gradient-tool-tile.html' title='Expression Blend 3: Gradient Tool, Tile Brush &amp;amp; Easing Functions'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/Sq8mZ4KPBLI/AAAAAAAAAVI/9KQ4_whusYU/s72-c/GradientTool_1_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-3913376248196578454</id><published>2009-09-12T14:32:00.000+02:00</published><updated>2009-09-15T08:44:23.131+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 3: Merged Resource Dictionaries &amp; Element Binding</title><content type='html'>&lt;p&gt;I wrote some information about &lt;a href="http://martinkruszynski.blogspot.com/2009/07/new-features-in-silverlight-3-merged.html"&gt;merged resource dictionaries&lt;/a&gt; and &lt;a href="http://martinkruszynski.blogspot.com/2009/07/new-features-in-silverlight-3-binding.html"&gt;element binding&lt;/a&gt; in Silverlight 3 about two months ago. Today I’ll show how Blend 3 supports these features.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Merged Resource Dictionary&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Sq83SRWVNbI/AAAAAAAAAVw/Com4t_Dglmc/s1600-h/MergedDictionary%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="MergedDictionary" border="0" alt="MergedDictionary" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Sq83ZNsGF0I/AAAAAAAAAV0/OPc67BfbIiE/MergedDictionary_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="padding-bottom: 0px; background-color: #fcfcfc; padding-left: 0px; width: 98px; padding-right: 0px; height: 115px; padding-top: 0px" title="Preview" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedicon.aspx/Publiczny/SL3/RTW/Samples/Expression/MergedDictionary.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;strong&gt;Element Binding&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Sq83fhv8BzI/AAAAAAAAAV4/WOK0qQKCrGw/s1600-h/ElementBinding%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="ElementBinding" border="0" alt="ElementBinding" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Sq83xDtWazI/AAAAAAAAAV8/mqBbIHmR2g0/ElementBinding_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-3913376248196578454?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/3913376248196578454/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=3913376248196578454' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/3913376248196578454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/3913376248196578454'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/09/expression-blend-3-merged-resource.html' title='Expression Blend 3: Merged Resource Dictionaries &amp;amp; Element Binding'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_D_LHhy5fi8o/Sq83ZNsGF0I/AAAAAAAAAV0/OPc67BfbIiE/s72-c/MergedDictionary_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-526282219862574977</id><published>2009-08-24T20:43:00.000+02:00</published><updated>2009-08-26T09:27:06.591+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 3: Sample Data &amp; Data Binding</title><content type='html'>&lt;p&gt;Expression Blend 3 introduces new databinding experience, generating data and many other data-related improvements. Read this post.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Useful links&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.windowspresentationfoundation.com/WorkingWithDataInSL.wmv"&gt;New Silverlight 3 / Blend 3 Video Tutorial – Working with Data&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Unni&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blogs.msdn.com/unnir/archive/2009/03/18/introducing-sample-data-support-in-blend-3.aspx"&gt;Introducing sample data support in Blend 3&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/unnir/archive/2009/03/19/datagrid-support-in-blend-3.aspx"&gt;DataGrid support in Blend 3&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/unnir/archive/2009/06/18/blend-3-databinding.aspx"&gt;Blend 3 Databinding&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/unnir/archive/2009/07/12/introducing-sample-data-for-developers.aspx"&gt;Introducing sample data for Developers&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Kirupa Chinnathambi&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.kirupa.com/blend_silverlight/element_to_element_data_binding_pg1.htm"&gt;Element to Element Data Binding - Page 1&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://www.kirupa.com/blend_silverlight/element_to_element_data_binding_pg2.htm"&gt;Element to Element Data Binding - Page 2&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;SilverZine&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://silverzine.com/tutorials/how-to-create-sample-data-in-blend-3/"&gt;How to Create Sample Data in Blend 3&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://silverzine.com/tutorials/simple-data-binding-in-blend-3/"&gt;Simple Data Binding in Blend 3&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Corey Schuman&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://www.85turns.com/2009/07/12/overview-of-sample-data-in-blend-3/"&gt;Overview of Sample Data in Blend 3&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;ISV Developer Community&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blogs.msdn.com/usisvde/archive/2009/06/18/blend-3-great-feature-2-master-details-screens.aspx"&gt;Blend 3 – Great Feature #2 – Master/Details Screens&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/usisvde/archive/2009/06/19/blend-3-great-feature-3-silverlight-element-binding.aspx"&gt;Blend 3 – Great Feature #3 – Silverlight Element Binding&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Evgeny&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://etvorun.spaces.live.com/blog/cns!6054141F335D00D3!130.entry"&gt;Expression Blend 3 – secrets of working with data&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://etvorun.spaces.live.com/blog/cns!6054141F335D00D3!154.entry"&gt;Expression Blend 3 – secrets of working with data 2&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Others&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="Silverlight &amp;amp; Blend 3 Sample Data" href="http://www.cynergysystems.com/blogs/page/michaelwolf?entry=silverlight_blend_3_sample_data"&gt;Silverlight &amp;amp; Blend 3 Sample Data&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://geekswithblogs.net/tkokke/archive/2009/06/29/styling-a-treeview-in-silverlight-and-blend-3.aspx"&gt;Styling a TreeView in Silverlight 3 and Blend 3&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.veracitysolutions.com/how-to-get-a-silverlight-3-autocompletebox-to-show-sample-data-in-blend-3/"&gt;How To Get a Silverlight 3 AutoCompleteBox To Show Sample Data in Blend 3&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;Samples&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I have created four samples with data binding and sample data:&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;SimpleBinding&lt;/strong&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpTiNLCEV-I/AAAAAAAAATc/GoKV7eLZaLk/s1600-h/Data13%5B1%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data1" border="0" alt="Data1" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpTiRzNEIMI/AAAAAAAAATg/o-DJMd--S3k/Data1_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SpTiWJsrQTI/AAAAAAAAATk/q3HAvM8vPrk/s1600-h/Data23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data2" border="0" alt="Data2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SpTiajEjWtI/AAAAAAAAATo/hPmaIoYJrTU/Data2_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpTieqBuTOI/AAAAAAAAATs/YZc7EYbAt3o/s1600-h/Data33.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data3" border="0" alt="Data3" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SpTijEJ5NqI/AAAAAAAAATw/qbY5-Nuo018/Data3_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;MasterDetails &lt;/strong&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SpTimcZF9jI/AAAAAAAAAT0/iX115iJw6P8/s1600-h/Data43.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data4" border="0" alt="Data4" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpTiqprZbLI/AAAAAAAAAT4/4ECSLxQTatU/Data4_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SpTiuRywc_I/AAAAAAAAAT8/B-WQkYGt-7c/s1600-h/Data53.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data5" border="0" alt="Data5" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SpTiytBMODI/AAAAAAAAAUA/eNAHwc5MxkI/Data5_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpTi2rEq2zI/AAAAAAAAAUE/X5xnlpe7sdU/s1600-h/Data63.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data6" border="0" alt="Data6" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SpTi670NhII/AAAAAAAAAUI/3_VNh-dWjtM/Data6_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;HierarchicalCollection&lt;/strong&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SpTi95Sq2VI/AAAAAAAAAUM/mjpJBhHN7BI/s1600-h/Data73.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data7" border="0" alt="Data7" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SpTjBhxMJ2I/AAAAAAAAAUQ/c3U_4p4oQnk/Data7_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SpTjFtybykI/AAAAAAAAAUU/Ls9T2G46L00/s1600-h/Data83.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data8" border="0" alt="Data8" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SpTjJ2ZxxoI/AAAAAAAAAUY/qiNeabNCW_E/Data8_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpTjNd-TILI/AAAAAAAAAUc/0FerSg36_Y4/s1600-h/Data93.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data9" border="0" alt="Data9" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpTjRkY5BQI/AAAAAAAAAUg/1X0e3upxG-A/Data9_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;DataGrid&lt;/strong&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SpTjULWnX0I/AAAAAAAAAUk/CS1zT78RTkI/s1600-h/Data103.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data10" border="0" alt="Data10" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SpTjXhLCslI/AAAAAAAAAUo/6h1r_b1Rwoo/Data10_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SpTjbPcCDkI/AAAAAAAAAUs/-R2MzfMfWuU/s1600-h/Data113.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data11" border="0" alt="Data11" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpTjf2qA7xI/AAAAAAAAAUw/Bsp9EmxANBU/Data11_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpTjjdG7vfI/AAAAAAAAAU0/9HujALyoXaA/s1600-h/Data123.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data12" border="0" alt="Data12" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SpTjn3GJFsI/AAAAAAAAAU4/GoirQ-40TV8/Data12_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="left"&gt;and I’ve tested Unni’s sample with design data:&lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SpTjsrDkRhI/AAAAAAAAAU8/Y43WN4jKfxM/s1600-h/Data133.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Data13" border="0" alt="Data13" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpTjyOBn3xI/AAAAAAAAAVA/rOsuDRTandk/Data13_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/Expression/Data.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-526282219862574977?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/526282219862574977/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=526282219862574977' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/526282219862574977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/526282219862574977'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/08/expression-blend-3-sample-data-data.html' title='Expression Blend 3: Sample Data &amp;amp; Data Binding'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_D_LHhy5fi8o/SpTiRzNEIMI/AAAAAAAAATg/o-DJMd--S3k/s72-c/Data1_thumb1.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-8865074384071910012</id><published>2009-08-22T22:11:00.000+02:00</published><updated>2009-08-25T23:16:51.897+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 3: Adobe PhotoShop and Adobe Illustrator Support</title><content type='html'>&lt;p&gt;With the introduction of Expression Blend 3 comes the ability to import both Adobe Photoshop (.psd) files and Adobe Illustrator (.ai) files directly into your projects (layers, shapes, text elements and more)&lt;/p&gt;  &lt;p&gt;Some useful links about these features:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://download.microsoft.com/download/1/1/C/11C8F2E2-711B-4581-A688-6B66DA4D1124/VentureIntoGaming_ExpressionBlend3_StarterKit.zip"&gt;Starter Kit: Venture into Gaming with Behaviors in Expression Blend 3 (first module)&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Janete Perez&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blog.sunnypixels.com/?p=103"&gt;Blend 3: Introduction to Importing Photoshop Files&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://blog.sunnypixels.com/?p=92"&gt;Blend 3: Photoshop Import- Supported Features&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a href="http://blog.sunnypixels.com/?p=102"&gt;Blend 3: Photoshop Import – Merging Layers&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;SilverZine&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://silverzine.com/tutorials/import-photoshop-files-to-blend-3/"&gt;Import Photoshop files to Blend 3&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I have imported Photoshop file with some image layers, vector shapes and layer mask. Dialog with file settings and DJ imported into Blend’s artboard below.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpRT3ZiDETI/AAAAAAAAATM/jiSWaX1afuc/s1600-h/Photoshop1%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Photoshop1" border="0" alt="Photoshop1" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SpRUTYdv6RI/AAAAAAAAATQ/DZCxtQeYx00/Photoshop1_thumb%5B1%5D.png?imgmax=800" width="644" height="459" /&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SpRUidwRCTI/AAAAAAAAATU/nB9Y6BXdDK8/s1600-h/Photoshop2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Photoshop2" border="0" alt="Photoshop2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SpRUwi3n1zI/AAAAAAAAATY/eCdyqz7dfG8/Photoshop2_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/Expression/PhotoshopImport.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-8865074384071910012?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/8865074384071910012/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=8865074384071910012' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8865074384071910012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8865074384071910012'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/08/expression-blend-3-adobe-photoshop-and.html' title='Expression Blend 3: Adobe PhotoShop and Adobe Illustrator Support'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/SpRUTYdv6RI/AAAAAAAAATQ/DZCxtQeYx00/s72-c/Photoshop1_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-8271429352470310659</id><published>2009-08-21T20:18:00.000+02:00</published><updated>2009-08-25T23:19:39.188+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3 SDK'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 3: Behaviors</title><content type='html'>&lt;p&gt;Blend 3 introduces a new concept called &lt;em&gt;behaviors&lt;/em&gt; for both Silverlight and WPF. Behaviors are self-contained, re-usable snippets of interactivity that can be assigned interactively to art board content. For more information read this post.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Useful Links&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://download.microsoft.com/download/1/1/C/11C8F2E2-711B-4581-A688-6B66DA4D1124/VentureIntoGaming_ExpressionBlend3_StarterKit.zip"&gt;Starter Kit: Venture into Gaming with Behaviors in Expression Blend 3&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Expression Blend and Design Team&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blogs.msdn.com/expression/archive/2009/03/23/an-introduction-to-behaviors-triggers-and-actions.aspx"&gt;An Introduction to Behaviors, Triggers, and Actions&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/expression/archive/2009/03/30/behaviors-under-the-hood-api-details-and-constraining-the-type.aspx"&gt;Behaviors Under the Hood – API Details and Constraining the Type&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/expression/archive/2009/07/15/a-look-at-some-advanced-behaviors-features.aspx"&gt;A Look at Some Advanced Behaviors Features&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Christian Schormann&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://electricbeach.org/?p=146"&gt;Blend 3 – An Overview&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://electricbeach.org/?p=147"&gt;Blend 3 Behaviors: Interactivity Without Code&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://electricbeach.org/?p=148"&gt;Blend 3: Triggers, Actions, Behaviors&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://electricbeach.org/?p=171"&gt;Blend 3 Behaviors: A Sample Action&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Kirupa Chinnathambi&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blog.kirupa.com/?p=341"&gt;Behaviors : Making Interactivity Easy (and Fun!)&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blog.kirupa.com/?p=351"&gt;Using Behaviors : A Quick Walkthrough&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blog.kirupa.com/?p=361"&gt;Behaviors : Writing Your Own Triggers&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blog.kirupa.com/?p=366"&gt;Looking at Triggers and Actions&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blog.kirupa.com/?p=374"&gt;Looking at Behaviors, the Class&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blog.kirupa.com/?p=378"&gt;Behaviors and Commands&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blog.kirupa.com/?p=386"&gt;Targeting Other Elements via the Blend 3 UI&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blog.kirupa.com/?p=391"&gt;Making it Easier to Write Behaviors&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Peter Blois&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://blois.us/blog/2009/04/datatrigger-bindings-on-non.html"&gt;DataTrigger, Bindings on non-FrameworkElements, TypeConverters, DataStateBehavior &amp;amp; DataStateSwitchBehavior&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Shawn Wildermuth&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://wildermuth.com/2009/05/16/Writing_Behaviors_for_Silverlight_3_-_Part_1"&gt;Writing Behaviors for Silverlight 3 - Part 1&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://wildermuth.com/2009/05/16/Writing_Behaviors_for_Silverlight_3_-_Part_2"&gt;Writing Behaviors for Silverlight 3 - Part 2&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Additional behaviors&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a href="http://expressionblend.codeplex.com/"&gt;Expression Blend Samples&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://gallery.expression.microsoft.com/en-us/site/search?f%5B0%5D.Type=RootCategory&amp;amp;f%5B0%5D.Value=behaviors"&gt;Expression Gallery –&amp;gt; Behaviors&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;strong&gt;My examples&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;I’ve built five examples with behaviors: &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;FirstUsage&lt;/strong&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SpQqfzcY7aI/AAAAAAAAARg/oyKcVtws8y4/s1600-h/Behaviors1%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors1" border="0" alt="Behaviors1" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SpQqlXfvOwI/AAAAAAAAARk/gwSkIMVv1Pg/Behaviors1_thumb%5B3%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;TargetSource&lt;/strong&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SpQqog6HOqI/AAAAAAAAARo/SLmp84SD1ME/s1600-h/Behaviors2%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors2" border="0" alt="Behaviors2" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SpQqrnBbB4I/AAAAAAAAARs/n7EeHiLW11Q/Behaviors2_thumb%5B3%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpQqvWc3tvI/AAAAAAAAARw/lLup73aXs10/s1600-h/Behaviors3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors3" border="0" alt="Behaviors3" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpQqzcbayKI/AAAAAAAAAR0/pd5WISrYHCU/Behaviors3_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpQq4CuocgI/AAAAAAAAAR4/Z8o8AVRf-dU/s1600-h/Behaviors4%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors4" border="0" alt="Behaviors4" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpQq92U856I/AAAAAAAAAR8/76eY_EjH3IE/Behaviors4_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SpQrC0bUqYI/AAAAAAAAASA/DNzM609R30w/s1600-h/Behaviors5%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors5" border="0" alt="Behaviors5" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SpQrIIcmHZI/AAAAAAAAASE/oPSc6EV890Q/Behaviors5_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Custom&lt;/strong&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpQrOldmpNI/AAAAAAAAASI/u3EJyPNv3J8/s1600-h/Behaviors6%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors6" border="0" alt="Behaviors6" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpQrVdYGnOI/AAAAAAAAASM/bEvjIem1MX8/Behaviors6_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpQrbNgcrjI/AAAAAAAAASQ/IS2IwrWEZU4/s1600-h/Behaviors7%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors7" border="0" alt="Behaviors7" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SpQrhAO6IrI/AAAAAAAAASU/mFdFky6n47U/Behaviors7_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Game&lt;/strong&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SpQrmvxMKsI/AAAAAAAAASY/GewUS2V2fYw/s1600-h/Behaviors8%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors8" border="0" alt="Behaviors8" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpQrsPxDMlI/AAAAAAAAASc/j40PBi7OBuk/Behaviors8_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpQrvu9qIsI/AAAAAAAAASg/nEk8nc43Y6c/s1600-h/Behaviors9%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors9" border="0" alt="Behaviors9" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpQrzUvyAGI/AAAAAAAAASk/3e-5DPZvFKQ/Behaviors9_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;BlendSamplesDemo&lt;/strong&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpQr30DJifI/AAAAAAAAASo/XYEKZWX6m4c/s1600-h/Behaviors10%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors10" border="0" alt="Behaviors10" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SpQr8pPHQfI/AAAAAAAAASs/MESDyh-M4d4/Behaviors10_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpQsA0gZ7MI/AAAAAAAAASw/aOAl66kTOfY/s1600-h/Behaviors11%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors11" border="0" alt="Behaviors11" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpQsFIIjEZI/AAAAAAAAAS0/OfbsH1KNQFE/Behaviors11_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SpQsJaWZVnI/AAAAAAAAAS4/o1YFRgDM48g/s1600-h/Behaviors12%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors12" border="0" alt="Behaviors12" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SpQsN8W05bI/AAAAAAAAAS8/hBqVLt0EOgw/Behaviors12_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SpQsSK8ce5I/AAAAAAAAATA/ZgM4RprwvJw/s1600-h/Behaviors13%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Behaviors13" border="0" alt="Behaviors13" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SpQsWmCb0AI/AAAAAAAAATI/-vtOsosy8nQ/Behaviors13_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/Expression/Behaviors.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-8271429352470310659?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/8271429352470310659/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=8271429352470310659' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8271429352470310659'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/8271429352470310659'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/08/expression-blend-3-behaviors.html' title='Expression Blend 3: Behaviors'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/SpQqlXfvOwI/AAAAAAAAARk/gwSkIMVv1Pg/s72-c/Behaviors1_thumb%5B3%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-2484558056128727716</id><published>2009-08-19T17:40:00.000+02:00</published><updated>2009-08-20T00:32:11.475+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Expression'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend 3'/><category scheme='http://www.blogger.com/atom/ns#' term='SketchFlow'/><category scheme='http://www.blogger.com/atom/ns#' term='Expression Blend'/><title type='text'>Expression Blend 3: SketchFlow</title><content type='html'>&lt;p&gt;SketchFlow is a flexible, informal, quick and powerful way to sketch and prototype rich, dynamic interactivity with Expression Blend.&lt;/p&gt;  &lt;p&gt;Below are materials that I recommend for learning SketchFlow:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="great blog posts" href="http://electricbeach.org/"&gt;Christian Schormann's blog&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a href="http://download.microsoft.com/download/A/4/9/A49AB02F-F035-402C-9B26-84860EEAF7DC/Prototyping_with_Sketchflow_StarterKit.zip"&gt;Prototyping with SketchFlow (starter kit with text, videos and sources)&lt;/a&gt;&amp;#160; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.dynamic-prototyping.com/" href="http://www.dynamic-prototyping.com/"&gt;http://www.dynamic-prototyping.com/ (preview book chapter + sources)&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;em&gt;Microsoft Expression Blend User Guide:&lt;/em&gt; Prototyping with SketchFlow &lt;/li&gt;    &lt;li&gt;&lt;a href="http://blogs.msdn.com/katriend/archive/2009/07/28/3-on-blend-3-10-xml-sample-data-and-datagrid.aspx"&gt;The 3 minutes on Blend 3 series (videos)&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I have created my SketchFlow Application (a band website). I’ve used almost all SketchFlow features which are described in documentation and tutorials.&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Screens &amp;amp; Connections (navigation &amp;amp; composition) &lt;/strong&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Sox7s8eeQ8I/AAAAAAAAAP8/OpgBdm6B9to/s1600-h/SketchFlow1%5B8%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow1" border="0" alt="SketchFlow1" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox7ylME5II/AAAAAAAAAQA/kRr00fRak88/SketchFlow1_thumb%5B4%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;SketchStyle Controls&lt;/strong&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Sox73f9zhUI/AAAAAAAAAQE/igK4E80sRwY/s1600-h/SketchFlow2%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow2" border="0" alt="SketchFlow2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Sox782O9CDI/AAAAAAAAAQI/gyEuwCuW_pU/SketchFlow2_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Navigation (buttons) [behaviors]&lt;/strong&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Sox8B76yMbI/AAAAAAAAAQM/tXrDUp3bjII/s1600-h/SketchFlow3%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow3" border="0" alt="SketchFlow3" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Sox8HXXAu3I/AAAAAAAAAQQ/Ms1TwEaK3wk/SketchFlow3_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;States (screen)&lt;/strong&gt; &lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox8Lh4sw0I/AAAAAAAAAQU/p5qqBm1tWzA/s1600-h/SketchFlow4%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow4" border="0" alt="SketchFlow4" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Sox8QrWSrYI/AAAAAAAAAQY/QDvQ2lYPUw4/SketchFlow4_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Activating State (button) [behavior]&lt;/strong&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Sox8VAU9y9I/AAAAAAAAAQc/y2Sgh-nM--M/s1600-h/SketchFlow5%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow5" border="0" alt="SketchFlow5" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox8aPHezgI/AAAAAAAAAQg/YOn9SFoTwCM/SketchFlow5_thumb%5B1%5D.png?imgmax=800" width="644" height="460" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;SketchFlow Animation&lt;/strong&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/Sox8fK2fPSI/AAAAAAAAAQk/MYmeH4T6XAI/s1600-h/SketchFlow6%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow6" border="0" alt="SketchFlow6" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Sox8kuRrY1I/AAAAAAAAAQo/HV2ga-oTFvc/SketchFlow6_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Playing an Animation (button click and other events) [behaviors]&lt;/strong&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox8phC8aSI/AAAAAAAAAQw/URJsqNZKGz4/s1600-h/SketchFlow7%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow7" border="0" alt="SketchFlow7" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox8vTHxlBI/AAAAAAAAAQ0/PJtdgRd8Ues/SketchFlow7_thumb%5B1%5D.png?imgmax=800" width="644" height="460" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Sample Data&lt;/strong&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox8zbmptcI/AAAAAAAAAQ4/GUjpI4ZJ68E/s1600-h/SketchFlow8%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow8" border="0" alt="SketchFlow8" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox84HdaWpI/AAAAAAAAAQ8/6XI0hA7bH-I/SketchFlow8_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Feedback (SketchFlow Player: adding &amp;amp; exporting)&lt;/strong&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox875mHNXI/AAAAAAAAARA/bBN9Bkmd0os/s1600-h/SketchFlow9%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow9" border="0" alt="SketchFlow9" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Sox9AZfnyrI/AAAAAAAAARE/VQ_JPVUKCzA/SketchFlow9_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Feedback (Expression Blend: importing)&lt;/strong&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox9EkCAECI/AAAAAAAAARI/T64tlpA3pIU/s1600-h/SketchFlow10%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow10" border="0" alt="SketchFlow10" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox9JqoEfQI/AAAAAAAAARM/rHRKK_8B5ws/SketchFlow10_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;Exporting to Word &lt;/strong&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Sox9OJF01aI/AAAAAAAAARQ/y9AtSx26Yn4/s1600-h/SketchFlow11%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow11" border="0" alt="SketchFlow11" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox9S1cjDWI/AAAAAAAAARU/epih5uWKbKY/SketchFlow11_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox9WI8m16I/AAAAAAAAARY/_DxDQaf8WNc/s1600-h/SketchFlow12%5B3%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="SketchFlow12" border="0" alt="SketchFlow12" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sox9ae6RxvI/AAAAAAAAARc/aw3gybL2VjE/SketchFlow12_thumb%5B1%5D.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/Expression/SketchFlowDemo.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="left"&gt;I have used &lt;em&gt;annotations&lt;/em&gt;, too. &lt;/p&gt;  &lt;p align="left"&gt;You can also:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;div align="left"&gt;import a Microsoft PowerPoint presentation and use the slides as the beginning of a SketchFlow project&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;package your SketchFlow project (you get a separate version of your prototype that can then be sent to a client or team member)&lt;/div&gt;   &lt;/li&gt;    &lt;li&gt;     &lt;div align="left"&gt;convert a SketchFlow prototype into a production-ready project (by removing SketchFlow references)&lt;/div&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p align="left"&gt;&lt;em&gt;Behaviors&lt;/em&gt; and &lt;em&gt;Sample Data&lt;/em&gt; are Blend 3 features that help with prototyping. I’ll describe them in next posts.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-2484558056128727716?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/2484558056128727716/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=2484558056128727716' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2484558056128727716'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2484558056128727716'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/08/expression-blend-3-sketchflow.html' title='Expression Blend 3: SketchFlow'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_D_LHhy5fi8o/Sox7ylME5II/AAAAAAAAAQA/kRr00fRak88/s72-c/SketchFlow1_thumb%5B4%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-4471851378202754972</id><published>2009-08-12T22:11:00.000+02:00</published><updated>2009-08-13T21:41:19.938+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Deep Zoom Composer'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>Deep Zoom Composer: Collection support &amp; Extensible templates</title><content type='html'>&lt;p&gt;Kirupa Chinnathambi, a program manager in the &lt;em&gt;Expression Blend&lt;/em&gt; team, has written excellent posts about &lt;a href="http://blog.kirupa.com/?p=404"&gt;collection support&lt;/a&gt; and &lt;a href="http://blog.kirupa.com/?p=417"&gt;extensible templates&lt;/a&gt; in Deep Zoom Composer. I have tested all these new features.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Collection Support&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;You no longer have to compose your images. You can just import your images and go straight to exporting using options: &lt;em&gt;Silverlight Deep Zoom –&amp;gt; Export as a collection&lt;/em&gt;&amp;#160;&lt;em&gt;–&amp;gt; Tag Browser&lt;/em&gt;. To filter what images you see based on the tag, you should add tags in &lt;em&gt;Compose&lt;/em&gt; view:&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SoO6BQNpe6I/AAAAAAAAAPA/vwKQOQ5veS8/s1600-h/collections1sh5.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="collections1-sh" border="0" alt="collections1-sh" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SoO6FORor4I/AAAAAAAAAPE/G4_UH1BQMiI/collections1sh_thumb3.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SoO6JKtwkAI/AAAAAAAAAPI/Rc2-kOBfSsc/s1600-h/collections2sh5.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="collections2-sh" border="0" alt="collections2-sh" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SoO6NmnW8ZI/AAAAAAAAAPM/jPOOt6vIPbQ/collections2sh_thumb3.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SoO6QQgpP_I/AAAAAAAAAPQ/22ML74pq_Nw/s1600-h/collections33.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="collections3" border="0" alt="collections3" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SoO6TS3pj8I/AAAAAAAAAPU/KbO-4aOb3-Q/collections3_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SoO6YvdIqII/AAAAAAAAAPY/y0X8HcF8XZw/s1600-h/collections48.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="collections4" border="0" alt="collections4" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SoO6eeuv11I/AAAAAAAAAPc/4EXCjEXSYFc/collections4_thumb6.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SoO6ilivB5I/AAAAAAAAAPg/FhckO8aOPr0/s1600-h/collections53.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="collections5" border="0" alt="collections5" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SoO6no3f4YI/AAAAAAAAAPk/MEVE0nPombg/collections5_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/DZC/DZC%7C_CollectionTag.part1.exe" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/DZC/DZC%7C_CollectionTag.part2.rar" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Extensible templates&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Now you can export Silverlight Deep Zoom collection using predefined templates:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;em&gt;Blend 3 Behaviors + Source&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;em&gt;Deep Zoom Classic + Source&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;em&gt;Deep Zoom Navigation (Default)&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;em&gt;Empty Project + Source&lt;/em&gt; &lt;/li&gt;    &lt;li&gt;&lt;em&gt;Tag Browser&lt;/em&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The process of selecting a template from within DZC is extensible. You can easily &lt;a href="http://blog.kirupa.com/?p=417"&gt;add your own templates&lt;/a&gt; with or without Source Files/Project. You should copy your files to &lt;em&gt;Export Templates&lt;/em&gt; folder (in DZC installation directory) and restart DZC. &lt;em&gt;&lt;/em&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SoRr-80uy7I/AAAAAAAAAPs/UDzNR_Py1ac/s1600-h/templates17.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="templates1" border="0" alt="templates1" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SoRsJNQHsDI/AAAAAAAAAPw/Ko5nz1LApiQ/templates1_thumb5.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;I have set blue background in my test templates.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SoRsP_1dmMI/AAAAAAAAAP0/C0xHULPLBS0/s1600-h/templates23.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="templates2" border="0" alt="templates2" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SoRsXn0QInI/AAAAAAAAAP4/ywM-kn30rw4/templates2_thumb1.png?imgmax=800" width="644" height="458" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/DZC/DZC%7C_CustomTemplates.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/expression/archive/2009/07/22/deep-zoom-composer-released.aspx"&gt;The latest release&lt;/a&gt; of Deep Zoom Composer has other interesting new features. &lt;a href="http://blogs.msdn.com/expression/archive/2009/07/22/deep-zoom-composer-released.aspx"&gt;Analytics tracking&lt;/a&gt; allows you to specify tracking URLs that will silently get called when you zoom in on an image or region. You can know which images of advertisement get the most attention. Another feature is &lt;a href="http://blogs.msdn.com/expression/archive/2009/07/22/deep-zoom-composer-released.aspx"&gt;support for Smooth Streaming&lt;/a&gt;.&amp;#160; Now you can export your images into a form that is optimized for servers with the technology enabled. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-4471851378202754972?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/4471851378202754972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=4471851378202754972' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4471851378202754972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4471851378202754972'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/08/deep-zoom-composer-collection-support.html' title='Deep Zoom Composer: Collection support &amp;amp; Extensible templates'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_D_LHhy5fi8o/SoO6FORor4I/AAAAAAAAAPE/G4_UH1BQMiI/s72-c/collections1sh_thumb3.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-2898216036005361197</id><published>2009-08-10T21:19:00.000+02:00</published><updated>2009-08-11T23:54:25.615+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Deep Zoom Composer'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>Deep Zoom Composer: Slideshow, Menu &amp; Links</title><content type='html'>&lt;p&gt;The &lt;em&gt;Deep Zoom&lt;/em&gt; technology in Silverlight can be used to do a lot more than just allowing you to zoom in on high resolution images. Using &lt;em&gt;Deep Zoom Composer&lt;/em&gt; you can now create slideshows, link images to other images or external links, and create a menu for navigating to images. For more details please read this post.&lt;/p&gt;  &lt;p&gt;Janete Perez, a program manager in the &lt;em&gt;Expression Blend&lt;/em&gt; product team, has written excellent posts about these cool features:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://blog.sunnypixels.com/?p=197" href="http://blog.sunnypixels.com/?p=197"&gt;http://blog.sunnypixels.com/?p=197&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blog.sunnypixels.com/?p=211" href="http://blog.sunnypixels.com/?p=211"&gt;http://blog.sunnypixels.com/?p=211&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blog.sunnypixels.com/?p=226" href="http://blog.sunnypixels.com/?p=226"&gt;http://blog.sunnypixels.com/?p=226&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I’ve tested all these features, too. Look at my image compositions below. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Slideshow&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SoHkVTOr0rI/AAAAAAAAAN4/qel9jjQZdKU/s1600-h/slideshow1sh5.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="slideshow1-sh" border="0" alt="slideshow1-sh" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SoHkfYa1-QI/AAAAAAAAAN8/DMQsiQSPBL0/slideshow1sh_thumb3.png?imgmax=800" width="640" height="454" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SoHkt4QZvLI/AAAAAAAAAOA/EEHRx0d4csQ/s1600-h/slideshow2%5B4%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="slideshow2" border="0" alt="slideshow2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SoHk89UUKNI/AAAAAAAAAOI/ypxvQh4HlB0/slideshow2_thumb%5B2%5D.png?imgmax=800" width="640" height="480" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/DZC/DZC%7C_SlideShow.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Menu&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SoHlJIpEGlI/AAAAAAAAAOM/IxtcNHzpqWk/s1600-h/menus14.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="menus1" border="0" alt="menus1" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SoHlVh9Os5I/AAAAAAAAAOQ/-oXgxrEXK94/menus1_thumb2.png?imgmax=800" width="640" height="454" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SoHlqsLOQYI/AAAAAAAAAOU/oIgPcl5LbQM/s1600-h/menus2%5B4%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="menus2" border="0" alt="menus2" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SoHl_54HiJI/AAAAAAAAAOY/LgC2PPjyyQc/menus2_thumb%5B2%5D.png?imgmax=800" width="640" height="480" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/DZC/DZC%7C_Menu.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Links&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SoHmKhEBLNI/AAAAAAAAAOc/GgBqD9iGzl4/s1600-h/links2sh4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="links2-sh" border="0" alt="links2-sh" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SoHmVhm7s-I/AAAAAAAAAOg/1AZeZGJzbFU/links2sh_thumb2.png?imgmax=800" width="640" height="454" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SoHmdi4i0ZI/AAAAAAAAAOk/tq9VcWslz-4/s1600-h/links3sh4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="links3-sh" border="0" alt="links3-sh" src="http://lh6.ggpht.com/_D_LHhy5fi8o/SoHmliQyfdI/AAAAAAAAAOo/O40WCtcdT3o/links3sh_thumb2.png?imgmax=800" width="640" height="454" /&gt;&lt;/a&gt; &lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SoHmrug1dhI/AAAAAAAAAOs/WHt7ocULobo/s1600-h/links4sh4.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="links4-sh" border="0" alt="links4-sh" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SoHmxZZG3hI/AAAAAAAAAOw/fumGtD_JrLI/links4sh_thumb2.png?imgmax=800" width="640" height="454" /&gt;&lt;/a&gt; &lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/SoHnC_sdlGI/AAAAAAAAAO0/S6zgWfb2pJY/s1600-h/links5%5B4%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="links5" border="0" alt="links5" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SoHnUZAlSCI/AAAAAAAAAO8/k_MjsIntRbE/links5_thumb%5B2%5D.png?imgmax=800" width="640" height="480" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/DZC/DZC%7C_Links.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-2898216036005361197?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/2898216036005361197/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=2898216036005361197' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2898216036005361197'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/2898216036005361197'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/08/deep-zoom-composer-slideshow-menu-links.html' title='Deep Zoom Composer: Slideshow, Menu &amp;amp; Links'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_D_LHhy5fi8o/SoHkfYa1-QI/AAAAAAAAAN8/DMQsiQSPBL0/s72-c/slideshow1sh_thumb3.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-70707975627641349</id><published>2009-08-08T18:31:00.000+02:00</published><updated>2009-08-10T01:29:51.341+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Rx Framework'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight Toolkit'/><title type='text'>Silverlight Toolkit July 2009: Rx Framework !</title><content type='html'>&lt;p&gt;The .NET Reactive Framework (Rx) uses Linq to build asynchronous code declaratively. It will be part of .NET 4.0. As of today the only place you can get it is in the &lt;a href="http://silverlight.codeplex.com/SourceControl/ListDownloadableCommits.aspx"&gt;Silverlight Toolkit sources&lt;/a&gt; (&lt;em&gt;System.Reactive.dll&amp;#160; &lt;/em&gt;in the bin folder of the Silverlight Toolkit Unit Tests). The Silverlight Toolkit team is using Rx to write reliable, event-based asynchronous tests. &lt;/p&gt;  &lt;p&gt;Jafar Husain, a developer on the Presentation Platform Controls team at Microsoft, has written very interesting posts about Rx Framework with many practical examples:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://themechanicalbride.blogspot.com/2009/04/rx-framework-asynchronous-programming.html" href="http://themechanicalbride.blogspot.com/2009/04/rx-framework-asynchronous-programming.html"&gt;http://themechanicalbride.blogspot.com/2009/04/rx-framework-asynchronous-programming.html&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://themechanicalbride.blogspot.com/2009/07/introducing-rx-linq-to-events.html" href="http://themechanicalbride.blogspot.com/2009/07/introducing-rx-linq-to-events.html"&gt;http://themechanicalbride.blogspot.com/2009/07/introducing-rx-linq-to-events.html&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://themechanicalbride.blogspot.com/2009/07/developing-with-rx-part-1-extension.html" href="http://themechanicalbride.blogspot.com/2009/07/developing-with-rx-part-1-extension.html"&gt;http://themechanicalbride.blogspot.com/2009/07/developing-with-rx-part-1-extension.html&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://themechanicalbride.blogspot.com/2009/07/developing-with-rx-part-2-converting.html" href="http://themechanicalbride.blogspot.com/2009/07/developing-with-rx-part-2-converting.html"&gt;http://themechanicalbride.blogspot.com/2009/07/developing-with-rx-part-2-converting.html&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://themechanicalbride.blogspot.com/2009/08/joy-of-rx-building-asynchronous-service.html" href="http://themechanicalbride.blogspot.com/2009/08/joy-of-rx-building-asynchronous-service.html"&gt;http://themechanicalbride.blogspot.com/2009/08/joy-of-rx-building-asynchronous-service.html&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Erik Meijer has discovered that &lt;em&gt;IEnumerable&lt;/em&gt; has a dual characteristic: as one can pull a piece of data from a collection, he can also push one into the same collection. So &lt;strong&gt;the Observable pattern and the Iterator pattern are &lt;em&gt;the same pattern&lt;/em&gt; !!!&lt;/strong&gt;&amp;#160; But &lt;em&gt;IEnumerable&lt;/em&gt; can’t be used in asynchronous operations because it blocks and the team has introduced a new pair of interfaces: &lt;em&gt;IObservable&lt;/em&gt; and &lt;em&gt;IObserver&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;Rx allows you to write complex, asynchronous code declaratively. With&amp;#160; &lt;em&gt;Linq to IObservable&lt;/em&gt; you can transform and combine events and async callbacks to create the precise event you’re interested in. Then you register a handler and do something with the data. Rx enables you build complex events from a sequence of primitive events (f.e click, drag &amp;amp; drop) !&lt;/p&gt;  &lt;p&gt; The framework includes lots of methods for constructing observables and observers. Converting events to &lt;em&gt;IObservables&lt;/em&gt; is very easy. Rx provides a static &lt;em&gt;Observable.FromEvent&lt;/em&gt; method. It's good practice to create extension methods for each event you would like to query (&lt;em&gt;extension events&lt;/em&gt;).&lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/Rx.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-70707975627641349?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/70707975627641349/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=70707975627641349' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/70707975627641349'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/70707975627641349'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/08/silverlight-toolkit-july-2009-rx.html' title='Silverlight Toolkit July 2009: Rx Framework !'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-7985734202078661224</id><published>2009-08-07T22:05:00.000+02:00</published><updated>2009-08-08T08:43:45.282+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight Toolkit'/><title type='text'>Silverlight Toolkit July 2009: New controls</title><content type='html'>&lt;p&gt;The newest Silverlight Toolkit includes &lt;a href="http://silverlight.codeplex.com/Wiki/View.aspx?title=Silverlight%20Toolkit%20July%202009%20change%20list"&gt;some new controls and extensions&lt;/a&gt;. Please read this post for more information. &lt;/p&gt;  &lt;p&gt;There are three new controls: &lt;em&gt;GlobalCalendar&lt;/em&gt;, &lt;em&gt;Rating&lt;/em&gt; and &lt;em&gt;TreeMap&lt;/em&gt;. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;GlobalCalendar&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;A &lt;em&gt;GlobalCalendar&lt;/em&gt; control provides an easy way to style individual days and define custom Gregorian calendars. It can be used on its own, or as a drop-down part of a &lt;em&gt;DatePicker&lt;/em&gt; control. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/Sn0eFsewJfI/AAAAAAAAANE/g_pQ5wxHhS0/s1600-h/GlobalCalendar-sh%5B8%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="GlobalCalendar-sh" border="0" alt="GlobalCalendar-sh" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sn0eH6mqiWI/AAAAAAAAANI/7bLy1InA5jI/GlobalCalendar-sh_thumb%5B4%5D.png?imgmax=800" width="428" height="209" /&gt;&lt;/a&gt; &lt;strong&gt;Rating&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;It can be used to display or allow users to interactively select a rating value. Ratings can be whole or partial stars. By default the control displays stars but can be easily styled. &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Sn0eLgQRlzI/AAAAAAAAANM/FBKu1pgrc1I/s1600-h/rating-sh%5B5%5D.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="rating-sh" border="0" alt="rating-sh" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Sn0eOeymZgI/AAAAAAAAANQ/O5F_cnbMZFg/rating-sh_thumb%5B3%5D.png?imgmax=800" width="240" height="235" /&gt;&lt;/a&gt; &lt;strong&gt;TreeMap&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;It can display hierarchical data as a set of nested rectangles. Each item in the hierarchy is laid out in a rectangular area of a size proportional to the value associated with the item.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://blogs.msdn.com/marlat/archive/2009/07/10/treemap-control-comes-to-silverlight-toolkit.aspx" href="http://blogs.msdn.com/marlat/archive/2009/07/10/treemap-control-comes-to-silverlight-toolkit.aspx"&gt;http://blogs.msdn.com/marlat/archive/2009/07/10/treemap-control-comes-to-silverlight-toolkit.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/delay/archive/2009/07/10/silverlight-charting-gets-an-update-and-a-treemap-silverlight-toolkit-july-2009-release-now-available.aspx" href="http://blogs.msdn.com/delay/archive/2009/07/10/silverlight-charting-gets-an-update-and-a-treemap-silverlight-toolkit-july-2009-release-now-available.aspx"&gt;http://blogs.msdn.com/delay/archive/2009/07/10/silverlight-charting-gets-an-update-and-a-treemap-silverlight-toolkit-july-2009-release-now-available.aspx&lt;/a&gt; &lt;/li&gt;    &lt;li&gt;&lt;a title="http://blogs.msdn.com/marlat/archive/2009/08/06/treemap-in-silverlight-toolkit-how-to-write-your-own-interpolator.aspx" href="http://blogs.msdn.com/marlat/archive/2009/08/06/treemap-in-silverlight-toolkit-how-to-write-your-own-interpolator.aspx"&gt;http://blogs.msdn.com/marlat/archive/2009/08/06/treemap-in-silverlight-toolkit-how-to-write-your-own-interpolator.aspx&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;The data for my samples is Silverlight course topic list. The metrics are quantity and importance.&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;ItemDefinition (topics by quantity)&lt;/strong&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Sn0eREz8aZI/AAAAAAAAANU/0Z9Mm1XQ5p0/s1600-h/treemap14.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="treemap1" border="0" alt="treemap1" src="http://lh6.ggpht.com/_D_LHhy5fi8o/Sn0eU35t4kI/AAAAAAAAANY/gMvl8wQIPvM/treemap1_thumb2.png?imgmax=800" width="642" height="456" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;ItemDefinitionSelector [levels] (topics by quantity)&lt;/strong&gt;&lt;a href="http://lh6.ggpht.com/_D_LHhy5fi8o/Sn0eXuV6qYI/AAAAAAAAANc/rV3QbkhDddU/s1600-h/treemap24.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="treemap2" border="0" alt="treemap2" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sn0eandLtPI/AAAAAAAAANg/6NHOEXEtors/treemap2_thumb2.png?imgmax=800" width="642" height="456" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;ItemDefinition &amp;amp; Interpolators (topics by quantity and importance)&lt;/strong&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/Sn0edhhH11I/AAAAAAAAANk/SlYKX-hJ89g/s1600-h/treemap34.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="treemap3" border="0" alt="treemap3" src="http://lh3.ggpht.com/_D_LHhy5fi8o/Sn0ehtinbqI/AAAAAAAAANo/o8wXSfQgSVg/treemap3_thumb2.png?imgmax=800" width="642" height="456" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;strong&gt;ItemDefinitionSelector [regions] &amp;amp; Interpolators (topics by quantity and importance)&lt;/strong&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/Sn0ekux9dQI/AAAAAAAAANs/ps44Pbejlzk/s1600-h/treemap44.png"&gt;&lt;img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="treemap4" border="0" alt="treemap4" src="http://lh5.ggpht.com/_D_LHhy5fi8o/Sn0enyJ4xhI/AAAAAAAAANw/UxQfOkAi7h0/treemap4_thumb2.png?imgmax=800" width="642" height="456" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/Toolkit2.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;p align="left"&gt;July release provides useful extensions: &lt;em&gt;ItemsControlExtensions&lt;/em&gt;, &lt;em&gt;ScrollViewerExtensions&lt;/em&gt; and &lt;em&gt;TreeViewExtensions&lt;/em&gt;. For more information look &lt;a href="http://silverlight.codeplex.com/Wiki/View.aspx?title=Silverlight%20Toolkit%20July%202009%20change%20list"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-7985734202078661224?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/7985734202078661224/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=7985734202078661224' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7985734202078661224'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/7985734202078661224'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/08/silverlight-toolkit-july-2009-new.html' title='Silverlight Toolkit July 2009: New controls'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_D_LHhy5fi8o/Sn0eH6mqiWI/AAAAAAAAANI/7bLy1InA5jI/s72-c/GlobalCalendar-sh_thumb%5B4%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-4860344232361431335</id><published>2009-08-04T20:59:00.000+02:00</published><updated>2009-08-05T23:57:20.697+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight Toolkit'/><title type='text'>Silverlight Toolkit July 2009: DataForm &amp; controls introduced in previous release</title><content type='html'>&lt;p&gt;There are many &lt;a href="http://silverlight.codeplex.com/Wiki/View.aspx?title=Silverlight%20Toolkit%20July%202009%20change%20list"&gt;changes&lt;/a&gt; in Silverlight Toolkit July 2009 release. Some controls and types have been removed from the Silverlight SDK and&amp;#160; they are now in the toolkit (f.e &lt;em&gt;DataForm&lt;/em&gt;). Controls introduced in March release have been refreshed. There are also new controls and extensions. Today I’ll write about new &lt;em&gt;DataForm&lt;/em&gt; and some refreshed controls. &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;DataForm&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;em&gt;DataForm&lt;/em&gt; provides a flexible way to display a single object of or collection of data in a form and to interact with the object(s).&amp;#160; It allows &lt;em&gt;IEditableObject&lt;/em&gt; support, for the committing or cancelling of changes; it allows field- and entity-level validation through the consumption of attributes. For more information see the links below. &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;a title="http://blogs.msdn.com/rickyt/archive/2009/07/13/silverlight-3-released-and-introduction-to-dataform.aspx" href="http://blogs.msdn.com/rickyt/archive/2009/07/13/silverlight-3-released-and-introduction-to-dataform.aspx"&gt;http://blogs.msdn.com/rickyt/archive/2009/07/13/silverlight-3-released-and-introduction-to-dataform.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://www.silverlightshow.net/items/Silverlight-3-RTW-overview.aspx" href="http://www.silverlightshow.net/items/Silverlight-3-RTW-overview.aspx"&gt;http://www.silverlightshow.net/items/Silverlight-3-RTW-overview.aspx&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://silverlight.codeplex.com/Wiki/View.aspx?title=Silverlight%20Toolkit%20July%202009%20change%20list" href="http://silverlight.codeplex.com/Wiki/View.aspx?title=Silverlight%20Toolkit%20July%202009%20change%20list"&gt;http://silverlight.codeplex.com/Wiki/View.aspx?title=Silverlight%20Toolkit%20July%202009%20change%20list&lt;/a&gt;&lt;/li&gt;    &lt;li&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/cc645049(VS.95).aspx" href="http://msdn.microsoft.com/en-us/library/cc645049(VS.95).aspx"&gt;http://msdn.microsoft.com/en-us/library/cc645049(VS.95).aspx&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;I’ve build four simple examples (screenshots below) to test some features: single object and collection displaying, validation, autogenerated UI, &lt;em&gt;EditTemplate&lt;/em&gt; with grouped &lt;em&gt;DataFields, EditTemplate &lt;/em&gt;without &lt;em&gt;DataFields&lt;/em&gt;, &lt;em&gt;ReadOnlyTemplate&lt;/em&gt;. Grouping fields with standard containers is cool!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SnoADN_YQyI/AAAAAAAAAMc/AHoANaPo-H8/s1600-h/dataform1-sh2%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="dataform1-sh2" border="0" alt="dataform1-sh2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SnoAEjmE-uI/AAAAAAAAAMg/pX8imYjkOMk/dataform1-sh2_thumb%5B2%5D.png?imgmax=800" width="537" height="301" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh5.ggpht.com/_D_LHhy5fi8o/SnoAGKA-y5I/AAAAAAAAAMk/z8pqyXm7OXA/s1600-h/dataform2-sh2%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="dataform2-sh2" border="0" alt="dataform2-sh2" src="http://lh4.ggpht.com/_D_LHhy5fi8o/SnoAHroTcBI/AAAAAAAAAMo/iBPBuUgrcGc/dataform2-sh2_thumb%5B2%5D.png?imgmax=800" width="401" height="301" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SnoAIqpvsDI/AAAAAAAAAMs/K6I0qM_-_x0/s1600-h/dataform3-sh2%5B9%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="dataform3-sh2" border="0" alt="dataform3-sh2" src="http://lh3.ggpht.com/_D_LHhy5fi8o/SnoAKb1rWaI/AAAAAAAAAMw/0FHuLw_eefY/dataform3-sh2_thumb%5B5%5D.png?imgmax=800" width="400" height="300" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh4.ggpht.com/_D_LHhy5fi8o/SnoALXb48hI/AAAAAAAAAM0/47al2-tnLIA/s1600-h/dataform4-sh2%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="dataform4-sh2" border="0" alt="dataform4-sh2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SnoANB9WQII/AAAAAAAAAM4/SpWd84AbbdI/dataform4-sh2_thumb%5B2%5D.png?imgmax=800" width="400" height="300" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;a href="http://lh3.ggpht.com/_D_LHhy5fi8o/SnoAOc8XYXI/AAAAAAAAAM8/0dr1gxaT5Dk/s1600-h/dataform5-sh2%5B4%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="dataform5-sh2" border="0" alt="dataform5-sh2" src="http://lh5.ggpht.com/_D_LHhy5fi8o/SnoAPvlEsxI/AAAAAAAAANA/FNyxZcNNccA/dataform5-sh2_thumb%5B2%5D.png?imgmax=800" width="400" height="300" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Accordion, DomainUpDown, TimePicker, LayoutTransform, TransitioningContentControl&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;There are not big changes in these controls. However, I have noticed some differences when I updated samples with &lt;em&gt;Accordion&lt;/em&gt;, &lt;em&gt;DomainUpDown&lt;/em&gt; and &lt;em&gt;TimePicker&lt;/em&gt;. For example &lt;a href="http://silverlight.codeplex.com/WorkItem/View.aspx?WorkItemId=2638"&gt;Accordion bug with HeaderTemplate binding&lt;/a&gt; has been fixed.&lt;/p&gt;  &lt;p&gt;&lt;iframe style="border-bottom: #dde5e9 1px solid; border-left: #dde5e9 1px solid; padding-bottom: 0px; background-color: #ffffff; margin: 3px; padding-left: 0px; width: 240px; padding-right: 0px; height: 66px; border-top: #dde5e9 1px solid; border-right: #dde5e9 1px solid; padding-top: 0px" marginheight="0" src="http://cid-dbcaf7311f080ba2.skydrive.live.com/embedrowdetail.aspx/Publiczny/SL3/RTW/Samples/Toolkit1.zip" frameborder="0" marginwidth="0" scrolling="no"&gt;&lt;/iframe&gt;&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7304085971491703521-4860344232361431335?l=martinkruszynski.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://martinkruszynski.blogspot.com/feeds/4860344232361431335/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=7304085971491703521&amp;postID=4860344232361431335' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4860344232361431335'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7304085971491703521/posts/default/4860344232361431335'/><link rel='alternate' type='text/html' href='http://martinkruszynski.blogspot.com/2009/08/silverlight-toolkit-july-2009-dataform.html' title='Silverlight Toolkit July 2009: DataForm &amp;amp; controls introduced in previous release'/><author><name>Martin Kruszyński</name><uri>http://www.blogger.com/profile/11714890098000844721</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_D_LHhy5fi8o/SnoAEjmE-uI/AAAAAAAAAMg/pX8imYjkOMk/s72-c/dataform1-sh2_thumb%5B2%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7304085971491703521.post-7097578517615990566</id><published>2009-08-03T20:18:00.000+02:00</published><updated>2009-08-04T00:19:24.476+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight 3'/><category scheme='http://www.blogger.com/atom/ns#' term='Silverlight'/><title type='text'>New features in Silverlight 3: New controls</title><content type='html'>&lt;p&gt;DataGrid paging… Modal window… Saving file…. Look at this post.&lt;/p&gt;  &lt;p&gt;Silverlight 3 runtime and SDK introduce new controls: &lt;em&gt;AutoCompleteBox&lt;/em&gt;,&lt;em&gt; ChildWindow&lt;/em&gt;, &lt;em&gt;DataPager&lt;/em&gt;, &lt;em&gt;DescriptionViewer&lt;/em&gt;, &lt;em&gt;Frame&lt;/em&gt;, &lt;em&gt;HeaderedItemsControl&lt;/em&gt;, &lt;em&gt;Label&lt;/em&gt;, &lt;em&gt;Page&lt;/em&gt;, &lt;em&gt;SaveFileDialog&lt;/em&gt;, &lt;em&gt;TreeView&lt;/em&gt;, &lt;em&gt;ValidationSummary&lt;/em&gt;, &lt;em&gt;VirtualizingStackPanel.&lt;/em&gt; Some of these controls were previously released as part of the &lt;a href="http://www.codeplex.com/Silverlight"&gt;Silverlight Toolkit&lt;/a&gt; and some I have been presented in my previous posts &lt;a href="http://martinkruszynski.blogspot.com/2009/07/new-features-in-silverlight-3-binding.html"&gt;here&lt;/a&gt; and &lt;a href="http://martinkruszynski.blogspot.com/2009/07/new-features-in-silverligh
