<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>BlendInsider</title>
	<atom:link href="http://blendinsider.com/feed" rel="self" type="application/rss+xml" />
	<link>http://blendinsider.com</link>
	<description>The Official Microsoft Expression Blend Team Blog</description>
	<lastBuildDate>Mon, 30 Apr 2012 16:39:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Video Demo:  Overview of XAML authoring features in Blend and Visual Studio</title>
		<link>http://blendinsider.com/technical/video-demo-overview-of-xaml-authoring-features-in-blend-and-visual-studio-2012-04-30/</link>
		<comments>http://blendinsider.com/technical/video-demo-overview-of-xaml-authoring-features-in-blend-and-visual-studio-2012-04-30/#comments</comments>
		<pubDate>Mon, 30 Apr 2012 16:39:09 +0000</pubDate>
		<dc:creator>Joanna Mason</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[Version: Beta]]></category>
		<category><![CDATA[XAML]]></category>

		<guid isPermaLink="false">http://blendinsider.com/?p=1012</guid>
		<description><![CDATA[Now that many of you have had the opportunity to check out Kirupa’s Visual Studio Toolbox episode on Channel 9 for visually building HTML apps using Blend you are probably wondering where is the video for XAML authoring? Look no further! I met with Robert<div><a class="more-link" href="http://blendinsider.com/technical/video-demo-overview-of-xaml-authoring-features-in-blend-and-visual-studio-2012-04-30/">Continue Reading</a></div>]]></description>
			<content:encoded><![CDATA[<p>Now that many of you have had the opportunity to check out Kirupa’s Visual Studio Toolbox episode on Channel 9 for visually building HTML apps using Blend you are probably wondering where is the video for XAML authoring? Look no further! I met with Robert Green last week and we walked through building out a simple Metro app starting with the Grid app project template. You can view the recording below (or <a href="http://media.ch9.ms/ch9/907c/860f3248-6610-48a1-be11-ce578956907c/VSToolbox35_high.mp4">download a high-quality MP4</a>):</p>
<p><video poster="http://blendinsider.com/wp-content/uploads/2012/04/JM-RG-VStoolbox.jpg" controls preload="none"><br />
     <source src="http://media.ch9.ms/ch9/907c/860f3248-6610-48a1-be11-ce578956907c/VSToolbox35_mid.mp4" type="video/mp4" /><br />
     <source src="http://media.ch9.ms/ch9/907c/860f3248-6610-48a1-be11-ce578956907c/VSToolbox35.webm" type="video/webm" /><br />
Your browser is unable to play this HTML5 video.<br />
Please download the video and watch it in your favorite player.<br />
</video></p>
<p>During this video I used both the XAML Designer in VS and Blend, highlighting the similarities and differences for each product. Highlights include some tips and tricks for quickly creating the object hierarchy, laying out your scene, adding animations and transitions, and new tooling specific to Metro app controls and app design.</p>
<p>Joanna</p>
]]></content:encoded>
			<wfw:commentRss>http://blendinsider.com/technical/video-demo-overview-of-xaml-authoring-features-in-blend-and-visual-studio-2012-04-30/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
<enclosure url="http://media.ch9.ms/ch9/907c/860f3248-6610-48a1-be11-ce578956907c/VSToolbox35_high.mp4" length="703020679" type="video/mp4" />
<enclosure url="http://media.ch9.ms/ch9/907c/860f3248-6610-48a1-be11-ce578956907c/VSToolbox35_mid.mp4" length="490635202" type="video/mp4" />
<enclosure url="http://media.ch9.ms/ch9/907c/860f3248-6610-48a1-be11-ce578956907c/VSToolbox35.webm" length="4884" type="video/webm" />
		</item>
		<item>
		<title>Designing app bars for HTML Metro style apps using Blend and the WinJS AppBar control</title>
		<link>http://blendinsider.com/technical/designing-app-bars-for-html-metro-style-apps-using-blend-and-the-winjs-appbar-control-2012-04-26/</link>
		<comments>http://blendinsider.com/technical/designing-app-bars-for-html-metro-style-apps-using-blend-and-the-winjs-appbar-control-2012-04-26/#comments</comments>
		<pubDate>Thu, 26 Apr 2012 19:07:55 +0000</pubDate>
		<dc:creator>Ruben Rios</dc:creator>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Version: Beta]]></category>

		<guid isPermaLink="false">http://blendinsider.com/?p=958</guid>
		<description><![CDATA[When you are designing new HTML-based Metro style applications, you’ll likely want to add one or more WinJS AppBar controls to your app. In this short tutorial, we’ll cover how to use the HTML authoring tools in Blend to create, interact with, and customize WinJS<div><a class="more-link" href="http://blendinsider.com/technical/designing-app-bars-for-html-metro-style-apps-using-blend-and-the-winjs-appbar-control-2012-04-26/">Continue Reading</a></div>]]></description>
			<content:encoded><![CDATA[<p>When you are designing new HTML-based Metro style applications, you’ll likely want to add one or more WinJS AppBar controls to your app. In this short tutorial, we’ll cover how to use the HTML authoring tools in Blend to create, interact with, and customize WinJS AppBar controls.<br />
<span id="more-958"></span></p>
<p>You’ll find more information about using app bars on the <a href="http://msdn.microsoft.com/en-us/windows/apps">Windows Developer Center</a>:</p>
<ul>
<li>Design guidance: <a href="http://msdn.microsoft.com/en-us/library/windows/apps/hh761499">Commanding design for Metro style apps</a></li>
<li><a href="http://msdn.microsoft.com/en-us/library/windows/apps/hh465309.aspx">Quickstart: Adding an app bar with commands</a></li>
<li><a href="http://msdn.microsoft.com/en-us/library/windows/apps/hh465302.aspx">Guidelines and checklists for AppBars</a></li>
</ul>
<h3>Using Blend to add an app bar to an HTML app</h3>
<p>To add an AppBar control in Blend, open the Assets panel and search for an AppBar by typing AppBar in the search field. You’ll notice the first result is the AppBar control, followed by different types of AppBar Commands.</p>
<p style="text-align: center;" align="center><a href="http://blendinsider.com/wp-content/uploads/2012/04/01-appbar-rr1.png"><img src="http://blendinsider.com/wp-content/uploads/2012/04/01-appbar-rr1.png" alt="AppBar control in the Assets panel" title="01-appbar-rr" width="650" height="342" class="aligncenter size-full wp-image-1003 no-border" /></a> </p>
<p>There are multiple ways you can insert the AppBar control into your document:</p>
<ul>
<li>Double click the AppBar control and the AppBar will be inserted inside the <strong>currently<br />
highlighted element</strong> in the Live DOM.</li>
<li>Drag and drop the AppBar control into the specific location you want to insert it in<br />
the <strong>Live DOM</strong>.</li>
<li>Drag and drop the AppBar control into the specific location you want to insert<br />
it in the <strong>design surface</strong>.</li>
</ul>
<p>After inserting the AppBar control you’ll notice it’s now visible in the design surface:</p>
<p><a href="http://blendinsider.com/wp-content/uploads/2012/04/02-appbar-rr1.png"><img src="http://blendinsider.com/wp-content/uploads/2012/04/02-appbar-rr1.png" alt="App bar displayed on the design surface" title="02-appbar-rr" width="648" height="413" class="aligncenter size-full wp-image-1004 no-border" /></a> </p>
<p>The options above are particularly helpful when you need to insert content into a specific markup location. In the AppBar control scenario, it is worth noting that the app bar always shows on top of regular content. That means that particular placement in the markup doesn’t affect how or where the app bar is displayed.</p>
<h1>Changing the app bar placement</h1>
<p>We just covered how to insert an AppBar control into your app. You may have noticed that the app bar was placed in the bottom of the app. What if you want to have a top app bar instead?</p>
<p>Luckily for us, the AppBar control makes it very easy to place it along the top or bottom of the apps. If we want to place an app bar at the top of an app, we simply need to modify its placement property to <strong>top</strong>. To do this, select the AppBar control, and go to the HTML Attributes panel to edit the placement property, located in the <strong>Control</strong> category.</p>
<p style="text-align: center;" align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/04/03-appbar-rr.png"><img class="aligncenter size-full wp-image-961 no-border" title="AppBar-Placement" src="http://blendinsider.com/wp-content/uploads/2012/04/03-appbar-rr.png" alt="Changing the app bar position" width="301" height="500" /></a></p>
<h1>Adding content to the app bar</h1>
<p>At this point we can start adding content to the app bar. You’ll notice the AppBar control initially contains an AppBarCommand control of type button. If you want to add extra AppBarCommands to you app bar, you can do so by using any of the previously discussed gestures for inserting an AppBar control as they also apply to every other WinJS control.</p>
<p>You can modify the AppBarCommand properties by selecting the AppBarCommand control and heading to the HTML Attributes panel to edit the properties located in the Control category. If you select the AppBarCommand control, the Control category will show all the particular properties for the control selected and provide the ability to easily change the values.</p>
<p style="text-align: center;" align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/04/04-appbar-rr.png"><img class="aligncenter size-full wp-image-962 no-border" title="AppBar--addingcontent" src="http://blendinsider.com/wp-content/uploads/2012/04/04-appbar-rr.png" alt="Adding Content to the app bar" width="608" height="557" /></a></p>
<h1>Using Blend to create an AppBarCommand button</h1>
<p>Now let’s assume we are creating a media application and we want to have an AppBarCommand button to turn on video captions. This button should have a label and an icon that resembles captions.</p>
<p>To create such button, let’s insert a new AppBar control and select its existing AppBarCommand control.  After selecting the button, head to the <strong>HTML Attributes</strong> panel and change the <strong>label</strong> property from “example” to “captions”. You’ll notice the change is automatically reflected in the design surface.</p>
<p>Now we only need to create the icon. If you are a talented designer and create your own icons, now it’s the time to add them to your project and type the relative URI of your icon in the icon’s property field (more about creating and inserting custom AppBarCommand icons will be discussed in a future post).</p>
<p>However, if you are anything like me you will probably want to leverage the handy WinJS resources. If that’s the case you can simply type “caption” in the <em>icon</em> property field to leverage one of over a 145 icons available in the WinJS library. After doing both of these actions we have created our desired AppBarCommand button!</p>
<p style="text-align: center;" align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/04/05-appbar-rr.png"><img class="aligncenter size-full wp-image-963 no-border" title="appbar-caption" src="http://blendinsider.com/wp-content/uploads/2012/04/05-appbar-rr.png" alt="Adding a caption to an app bar" width="478" height="319" /></a></p>
<p>Here’s the markup you should have if you followed along:</p>

<div class="wp_syntax"><div class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> data-win-control<span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;WinJS.UI.AppBar&quot;</span>&gt;</span>
     <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">button</span> data-win-control<span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;WinJS.UI.AppBarCommand&quot;</span> data-win-options<span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;{icon:'caption'},&quot;</span>&gt;</span> <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">button</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span></pre></div></div>

<blockquote><p><strong>To see a list of the available icons in WinJS, you can visit Adam Kinney’s excellent blog post:  <a href="http://adamkinney.com/blog/2012/03/04/windows-8-appbaricons-enumerated-and-visualized/">Windows 8 AppBarIcons enumerated and visualized</a>.</strong></p></blockquote>
<h1>Showing and hiding the app bar at design time</h1>
<p>Finally, we need to have a way to preview our changes. In order to show and hide the app bar at design time, simply select the AppBar control in either the Live DOM or the design surface and right-click. This will open the context menu for the selected element. When you select an AppBar control you’ll notice an option to “Activate AppBar”.</p>
<p style="text-align: center;" align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/04/06-appbar-rr.png"><img class="aligncenter size-full wp-image-964 no-border" title="appbar-showhide" src="http://blendinsider.com/wp-content/uploads/2012/04/06-appbar-rr.png" alt="Showing and hiding the app bar at runtime." width="421" height="447" /></a></p>
<p>Notice that since the AppBar is currently visible, a checkmark appears in front of the option. This context menu option allows you to activate and de-activate (hide) the AppBar while in design mode.</p>
<p>This quick tutorial simply aims to cover a few basic concepts of how to use Blend to design your metro style applications. To find specific guidelines for the AppBar you can visit the Windows Developer Section covering <a href="http://msdn.microsoft.com/en-us/library/windows/apps/hh465302.aspx">Guidelines and checklists for AppBars</a>.</p>
<p>Let us know what you think about the features discussed above. If you have any feedback please let us know by either commenting below or e-mailing me directly at <strong><em>ruben.rios[at]microsoft.com.</em></strong></p>
<p>Thanks,<br />
Ruben Rios</p>
]]></content:encoded>
			<wfw:commentRss>http://blendinsider.com/technical/designing-app-bars-for-html-metro-style-apps-using-blend-and-the-winjs-appbar-control-2012-04-26/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Video Demo: Overview of the HTML Authoring Features in Blend</title>
		<link>http://blendinsider.com/technical/video-demo-overview-of-the-html-authoring-features-in-blend-2012-04-24/</link>
		<comments>http://blendinsider.com/technical/video-demo-overview-of-the-html-authoring-features-in-blend-2012-04-24/#comments</comments>
		<pubDate>Tue, 24 Apr 2012 21:39:26 +0000</pubDate>
		<dc:creator>Kirupa</dc:creator>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Version: Beta]]></category>
		<category><![CDATA[demo]]></category>
		<category><![CDATA[metro]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://blendinsider.com/?p=923</guid>
		<description><![CDATA[Recently, I had the opportunity to talk to Robert Green about the HTML authoring features you can find in Blend. You can view the recording of this Visual Studio Toolbox episode below (or download a high-quality MP4): Sorry, your browser doesn&#8217;t support HTML5 embedded videos.<div><a class="more-link" href="http://blendinsider.com/technical/video-demo-overview-of-the-html-authoring-features-in-blend-2012-04-24/">Continue Reading</a></div>]]></description>
			<content:encoded><![CDATA[<p>Recently, I had the opportunity to talk to <a href="http://channel9.msdn.com/Shows/Visual-Studio-Toolbox">Robert Green</a> about the HTML authoring features you can find in Blend. You can view the recording of this Visual Studio Toolbox episode below (or download a <a href="http://ak.channel9.msdn.com/ch9/b7e2/0f8892e1-cc64-4882-9567-f7d60901b7e2/VSToolbox34_high.mp4">high-quality MP4</a>):<br />
<span id="more-923"></span><br />
<video poster="http://blendinsider.com/wp-content/uploads/2012/04/video-demo-intro.png" controls preload="none"><br />
	<source src="http://ak.channel9.msdn.com/ch9/b7e2/0f8892e1-cc64-4882-9567-f7d60901b7e2/VSToolbox34_mid.mp4" type="video/mp4" /><br />
	<source src="http://ak.channel9.msdn.com/ch9/b7e2/0f8892e1-cc64-4882-9567-f7d60901b7e2/VSToolbox34.webm" type="video/webm" /><br />
Sorry, your browser doesn&#8217;t support HTML5 embedded videos.<br />
You can download the video and watch it with your favorite video player.<br />
</video><br />
During this talk, I demo’ed how a lot of the features we added can be used end-to-end to create a working (…and good looking!) HTML-flavored Metro style app.<br />
Some of the big Blend features I covered include:</p>
<ol>
<li>Working with the Styles pane, CSS Properties panel, and the Applied Rules list</li>
<li>Adding a ListView control and associating it with some data</li>
<li>Defining an item template and modifying how it looks</li>
<li>Specifying a binding</li>
<li>Laying out content with the Grid element</li>
<li>Creating a CSS3 transition</li>
<li>Using interactive mode to style the checked state of my ListView</li>
<li>Showing how to use the Platform panel to design for devices</li>
<li>Designing for devices by using media queries and listening to JavaScript events</li>
</ol>
<p>I hope to provide more screencasts in the future that target specific features in Blend, so if you have any requests for topics you would like to see shown, please feel free to post in the comments below.</p>
<p>Cheers,<br />
Kirupa</p>
]]></content:encoded>
			<wfw:commentRss>http://blendinsider.com/technical/video-demo-overview-of-the-html-authoring-features-in-blend-2012-04-24/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
<enclosure url="http://ak.channel9.msdn.com/ch9/b7e2/0f8892e1-cc64-4882-9567-f7d60901b7e2/VSToolbox34_high.mp4" length="642506542" type="video/mp4" />
<enclosure url="http://ak.channel9.msdn.com/ch9/b7e2/0f8892e1-cc64-4882-9567-f7d60901b7e2/VSToolbox34_mid.mp4" length="450873296" type="video/mp4" />
<enclosure url="http://ak.channel9.msdn.com/ch9/b7e2/0f8892e1-cc64-4882-9567-f7d60901b7e2/VSToolbox34.webm" length="4884" type="video/webm" />
		</item>
		<item>
		<title>Mysteries of XDesProc&#8211;Revealed!</title>
		<link>http://blendinsider.com/technical/mysteries-of-xdesproc-revealed-2-2012-04-19/</link>
		<comments>http://blendinsider.com/technical/mysteries-of-xdesproc-revealed-2-2012-04-19/#comments</comments>
		<pubDate>Thu, 19 Apr 2012 22:21:51 +0000</pubDate>
		<dc:creator>Joanna Mason</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[Version: Beta]]></category>
		<category><![CDATA[XAML]]></category>

		<guid isPermaLink="false">http://blendinsider.com/?p=914</guid>
		<description><![CDATA[In Christian’s post Visual Authoring for the Windows 8 Consumer Preview he mentions that one of the changes to Blend is the introduction of an architecture that isolates the designer into its own process. In fact, this new architecture is used in both Blend and<div><a class="more-link" href="http://blendinsider.com/technical/mysteries-of-xdesproc-revealed-2-2012-04-19/">Continue Reading</a></div>]]></description>
			<content:encoded><![CDATA[<p>In Christian’s post <a href="http://blendinsider.com/technical/visual-authoring-for-the-windows-8-consumer-preview-with-blend-and-visual-studio-2012-02-29/">Visual Authoring for the Windows 8 Consumer Preview</a> he mentions that one of the changes to Blend is the introduction of an architecture that isolates the designer into its own process. In fact, this new architecture is used in both Blend and the XAML designer in Visual Studio. In this post, I’ll give a little more detail into what this means to you as a Metro style app author.<br />
<span id="more-914"></span></p>
<h2>Stay on your side!</h2>
<p>This new architecture isolates the runtime components from the products’ infrastructure and user interface into two processes.  The runtime components, which may also include user code, as well as most of the Blend user interface for XAML projects, such as the Properties panel, are hosted in the designer process (XDesProc.exe) while the project system and the code/XAML editors live in the host process (blend.exe for Blend and devenv.exe for Visual Studio).</p>
<p>This architecture enables Blend and Visual Studio to provide a full-fidelity, WYSIWYG design surface for Metro style apps across VB, C# and C++. We use the runtime implementation of WinRT to build our design-time experience. Specifically, we create a design-time AppContainer package and manifest that is separate from the runtime version. While the manifest and package are design-time specific, the user code in the package is identical to the runtime code.  However, this means that anything running in this process must follow the same security model as required for an AppContainer. Since Blend and Visual Studio need full access to the file system, these parts of the product’s infrastructure and user interface remain in blend.exe and devenv.exe.</p>
<h2>When good processes go bad</h2>
<p>Running user code on the design surface is great because it enables a degree of fidelity that would otherwise be impossible to achieve.  However, errors in the user code can also affect the designer process in Blend and Visual Studio. For C# and VB projects exceptions can frequently be caught safely, however for C++ projects there are many cases where user code can cause an exception that is impossible for the designer process to catch. The good news is that an exception in the designer process will typically not affect blend.exe or devenv.exe. When a serious problem happens in the designer process, you will see something like the following on the design surface:</p>
<p align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/04/unhandled-exception.png"><img class="aligncenter size-full wp-image-915" title="unhandled-exception" src="http://blendinsider.com/wp-content/uploads/2012/04/unhandled-exception.png" alt="Unhandeled exception in Blend" width="650" height="207" /></a></p>
<p>If user code is causing the exception, once you correct the issue and rebuild, you can click the link to reload the designer.</p>
<p>User code is not the only reason for the message shown above to appear. Bugs in our own product code and the communication between the two processes can also cause designer exceptions.  A good rule of thumb is that if a reload fixes things, it is likely a bug in the product.  Of course we expect to have stabilized the product for the final release but it would also be appreciated if you would tell us about the bug by entering it at <a href="http://connect.microsoft.com/blend">http://connect.microsoft.com/blend</a> so we don’t miss any important scenarios.</p>
<p>If a reload does not fix things, it is possible that your code is expecting to access some part of WinRT that is not available at design time (e.g. ICoreWindow). If that seems likely, try using the <a href="http://msdn.microsoft.com/en-us/library/windows/apps/windows.applicationmodel.designmode.designmodeenabled.aspx">DesignMode.DesignModeEnabled</a> property to bypass this section of your code at design time.</p>
<h2>When the pressure becomes too great</h2>
<p>There is a very important benefit of the new architecture for Blend with respect to memory utilization. In general, when a project includes custom components, the user assemblies are regenerated on build, if they have changed since the last build. With the Blend 4 architecture, the newly built assemblies would be loaded but the out of date, or stale, assemblies would stay in memory.</p>
<p>The Blend 4 architecture did not take advantage of either app domains or a separate process, there was no way to unload the previous versions in .NET and these stale assemblies would effectively accumulate, taking up more and more memory with each build. This could cause Blend to eventually run out of virtual address space, especially if the component assemblies in the project contained large resources such as images.</p>
<p>With the new isolated designer architecture, we have the flexibility to restart the designer process if the memory pressure becomes an issue, causing the stale assemblies to be discarded. These restarts are done in the background, without interrupting your workflow.</p>
<h2>Performance, performance, performance</h2>
<p>There are also cases where the runtime requires that we restart the designer. For example, we must restart the process for each build with C++ projects. This can cause some performance issues for rebuild scenarios in C++. If you have multiple projects open and make a change to a shared control, it may result in several designer processes restarting at the same time.</p>
<p>With the new architecture, there is often additional overhead to communicate between the two processes. The XAML representation lives in the host process and changes made to the XAML in the designer process, say in the Properties panel or the design surface, must then be synchronized across the process boundaries.  If you have noticed some areas where the performance is slower than previous versions, it might be related to scenarios similar to these. Rest assured, we are working tirelessly on optimizing the performance of many scenarios and you can expect to see this improving from where it currently is in the Visual Studio 11 Beta release.</p>
<p>Joanna Mason<br />
Lead Program Manager<br />
Blend</p>
]]></content:encoded>
			<wfw:commentRss>http://blendinsider.com/technical/mysteries-of-xdesproc-revealed-2-2012-04-19/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Creating an HTML Metro style app that references C# and C++ code</title>
		<link>http://blendinsider.com/technical/creating-an-html-metro-style-app-that-references-c-and-c-code-2012-04-13/</link>
		<comments>http://blendinsider.com/technical/creating-an-html-metro-style-app-that-references-c-and-c-code-2012-04-13/#comments</comments>
		<pubDate>Fri, 13 Apr 2012 17:58:01 +0000</pubDate>
		<dc:creator>Steven Yackel</dc:creator>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Version: Beta]]></category>

		<guid isPermaLink="false">http://blendinsider.com/?p=883</guid>
		<description><![CDATA[Welcome to the Blend team blog.  This post is about creating a WWA (Windows Web Application) hybrid app with C++ and C#.  With this type of Blend project, it is possible to have JavaScript code use functions and libraries from both C++ and C#.  This<div><a class="more-link" href="http://blendinsider.com/technical/creating-an-html-metro-style-app-that-references-c-and-c-code-2012-04-13/">Continue Reading</a></div>]]></description>
			<content:encoded><![CDATA[<p>Welcome to the Blend team blog.  This post is about creating a WWA (Windows Web Application) hybrid app with C++ and C#.  With this type of Blend project, it is possible to have JavaScript code use functions and libraries from both C++ and C#.  This post will walk you through how to create a basic hybrid app with both C# and C++.<span id="more-883"></span></p>
<h2>Getting started: Create a New WWA app</h2>
<p>The first thing you need to do is launch Blend for Visual Studio 11 Beta and create a new HTML app.</p>
<ol>
<li>Choose <strong>File &gt; New Project </strong>and select <strong>HTML (Windows Metro Style)</strong> in the left pane.</li>
<li>In the right pane, select the default template <strong>Blank Application</strong>.</li>
<li>To follow along with this post, name your project <strong>WwaHybridProject</strong>.</li>
</ol>
<p align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/04/01-hybrid-newWWA.png"><img class="aligncenter size-full wp-image-886" title="01-hybrid-newWWA" src="http://blendinsider.com/wp-content/uploads/2012/04/01-hybrid-newWWA.png" alt="Create a new WWA app in Blend" width="600" height="467" /></a></p>
<h2>Add a C# project to the solution</h2>
<p>At this point you will see Blend open with a mostly blank art board, with just the text “Content goes here.”  We are now going to add the C# project to this solution.</p>
<ol>
<li>Open the <strong>Projects</strong> pane in Blend and right-click your solution.  It will be labeled <strong>Solution: ‘WwaHybridProject’</strong>.</li>
<li>From the context menu, select <strong>Add New Project…</strong> The window that opens will look identical to the one that was used to create the WWA project.</li>
<li>Select <strong>XAML (Windows Metro style)</strong> in the left pane, and select <strong>Class Library</strong> in the right pane.  Make sure that the <strong>Language</strong> drop down is set <strong>to Visual C#</strong>.</li>
<li>Name this project <strong>CsharpLibrary</strong>.  The default view is now updated to be an empty C# class file.  Also, in the project pane, this new project will be displayed.</li>
</ol>
<p align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/04/02-hybrid-newCSharp.png"><img class="aligncenter size-full wp-image-887" title="02-hybrid-newCSharp" src="http://blendinsider.com/wp-content/uploads/2012/04/02-hybrid-newCSharp.png" alt="Add a C# project to the solution" width="600" height="467" /></a></p>
<h2>Add a C++ project to the solution</h2>
<p>You will follow nearly the same steps to add a C++ project to this solution.</p>
<ol>
<li>Open the <strong>Projects</strong> pane in Blend and right-click your solution.  It will be labeled <strong>Solution: ‘WwaHybridProject’</strong>.</li>
<li>From the context menu, select <strong>Add New Project…</strong> .</li>
<li>Select <strong>XAML (Windows Metro style)</strong> from the left hand pane.  This time, in the right hand pane, select <strong>WinRT Component DLL</strong>.  Make sure the <strong>Language</strong> drop down is set to <strong>Visual C++</strong>.</li>
<li>Name this project <strong>CPlusPlusLibrary</strong>.  Again, the default view will be updated to display the empty C++ class file, and the project pane will now display all three projects.</li>
</ol>
<h2>Add the C# and C++ References to your WWA app</h2>
<p>Now it is time to add the project references so that the WWA application can use code from the C# and C++ libraries that were just created.  This is done in Visual Studio.</p>
<ol>
<li>Right click your solution in the <strong>Projects</strong> pane and select <strong>Edit in Visual Studio </strong>from the context menu.  It will be labeled <strong>Solution: ‘WwaHybridProject’</strong>.</li>
<li>After Visual Studio finishes loading the project, make sure the “Solution Explorer” panel is visible and that the three projects inside the solution are all displayed.</li>
</ol>
<h2>Configure C# projects to generate WinMD files</h2>
<p>By default, C++ projects automatically output the WinMD (Windows Meta Data) files that JavaScript needs for the project references.  C# projects, however, need to be configured to do this.</p>
<ol>
<li>In Visual Studio’s Solution Explorer, right click the <strong>CsharpLibrary</strong> project and select <strong>Properties</strong> from the context menu.  This will bring up tabs to set the project’s properties.</li>
<li>On the <strong>Application</strong> tab, update the <strong>Output type</strong> of the project to <strong>WinMD File</strong>.</li>
<li>After doing this, select <strong>File &gt; Save All</strong>.  Then you can close the <strong>CsharpLibrary</strong> Properties tab.</li>
</ol>
<p align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/04/03-hybrid-configCSharp.png"><img class="aligncenter size-full wp-image-888" title="03-hybrid-configCSharp" src="http://blendinsider.com/wp-content/uploads/2012/04/03-hybrid-configCSharp.png" alt="" width="650" height="443" /></a></p>
<h2>Set up project references</h2>
<p>Even though the projects are in the same solution, they do not reference each other by default.  Now that C# is correctly outputting WinMD files, the project references can be added.</p>
<ol>
<li>In Visual Studio’s Solution Explorer, right click the <strong>WwaHybridProject</strong> and select <strong>Add Reference…</strong> from the context menu.  Make sure you are selecting the project itself, not the overall solution.</li>
<li>The type of reference to be added is <strong>Solution</strong>, so select that from the tabs on the left.</li>
<li>In the middle pane both the C# and the C++ projects will now be displayed.  Check the box next to both projects in the first column and then click <strong>Ok</strong> to close the window.</li>
</ol>
<p style="text-align: center;"><a href="http://blendinsider.com/wp-content/uploads/2012/04/04-hybrid-references.png"><img class="aligncenter size-full wp-image-889" title="04-hybrid-references" src="http://blendinsider.com/wp-content/uploads/2012/04/04-hybrid-references.png" alt="Set up project references for hybrid Metro style app" width="650" height="447" /></a></p>
<ol start="4">
<li>After doing this, select <strong>File &gt; Save All</strong>.  Then you can close Visual Studio.</li>
<li>Blend will prompt asking if the projects should be reloaded since they have been updated outside of Blend.  Select <strong>Yes</strong> for all of these prompts.</li>
<li>To make sure the projects linked up correctly, go to the <strong>Projects</strong> pane under the <strong>WwaHybridProject</strong>  and expand  <strong>References</strong>.   In this list, there should be a reference to both <strong>CSharpLibrary</strong> and <strong>CplusPlusLibrary</strong>.</li>
</ol>
<h2>Update the code</h2>
<p>Next we will update the C#, C++, and JavaScript code.</p>
<h3>Update the C# project</h3>
<p>First, we will update the C# project.</p>
<ol>
<li>The default name for the class that was created, <strong>Class1.cs</strong> is not very descriptive.  Right click that file in the <strong>Project</strong> pane and rename it to <strong>RedClass.cs</strong>.</li>
<li>Open this file by double-clicking it and update the class name to RedClass.</li>
<li>In addition to changing the class name, it is necessary to update the class as “sealed” so that it can be exported.  The final class declaration statement will look like this:</li>
</ol>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">sealed</span> <span style="color: #6666cc; font-weight: bold;">class</span> RedClass</pre></div></div>

<ol start="4">
<li>In order to make sure our reference is working, we need to add a method to the class that will be called by the JavaScript code.  This method will return a string, the color that one of the html elements will turn.  After updating the class with the method, save the file and close it.  Here is the method to add:</li>
</ol>

<div class="wp_syntax"><div class="code"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">string</span> GetRed<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
<span style="color: #008000;">&#123;</span>
    <span style="color: #0600FF; font-weight: bold;">return</span> “red”<span style="color: #008000;">;</span>
<span style="color: #008000;">&#125;</span></pre></div></div>

<h3>Update the C++ project</h3>
<p>The C++ default class name of <strong>WinRTComponent.cpp</strong> is just as non-descriptive as the C#’s default class name.</p>
<ol>
<li>Rename both the header file and the cpp file in the C++ project to <strong>GreenClass.h</strong> and <strong>GreenClass.cpp</strong> respectively.</li>
<li>Open the <strong>GreenClass.cpp</strong> file and update all instances of <strong>WinRTComponent</strong> to <strong>GreenClass</strong>.</li>
<li>Then add the method to return “Green.”  Here is the method to add:</li>
</ol>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;">Platform<span style="color: #008080;">::</span><span style="color: #007788;">String</span><span style="color: #000040;">^</span> GreenClass<span style="color: #008080;">::</span><span style="color: #007788;">GetGreen</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
<span style="color: #008000;">&#123;</span>
    <span style="color: #0000ff;">return</span> “green”<span style="color: #008080;">;</span>
<span style="color: #008000;">&#125;</span></pre></div></div>

<ol start="4">
<li>After adding the method, we need to update the header file with the new method.  Don’t forget to update the references to “<strong> WinRTComponent</strong>” to “<strong>GreenClass</strong>” as well.  The public declaration section of the file should now look like this:</li>
</ol>

<div class="wp_syntax"><div class="code"><pre class="cpp" style="font-family:monospace;"><span style="color: #0000ff;">public</span><span style="color: #008080;">:</span>
    GreenClass<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span>
    Platform<span style="color: #008080;">::</span><span style="color: #007788;">String</span><span style="color: #000040;">^</span> GetGreen<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008080;">;</span></pre></div></div>

<h2>Build the updated project</h2>
<p>After adding all of this code to the C# and C++ projects, it’s best to make sure everything builds correctly.</p>
<ol>
<li>Under the <strong>Project</strong> menu in Blend, select <strong>Build Project</strong>.</li>
<li>Before moving on from this point, make sure to resolve any build errors that are displayed.</li>
</ol>
<h2>Update the HTML and JavaScript to use the C# and C++ methods</h2>
<p>The HTML and JavaScript code now need to be updated to use the methods that we have just created in the C# and C++ code.  First the HTML will be updated.</p>
<h3>Update the HTML</h3>
<ol>
<li>Open the <strong>default.html</strong> file from the <strong>Projects</strong> pane by double clicking on it.</li>
<li>Then switch to either <strong>Split</strong> view or <strong>Code</strong> view so the markup of the page is visible.</li>
<li>Replace the existing content of the &lt;body&gt; tag with two &lt;div&gt; tags, assigning one the id <strong>top</strong> and the other the id <strong>bottom</strong>.</li>
<li>Then update the code so each &lt;div&gt; fills up half the screen.  The content of the &lt;div&gt; tags can also be changed to show which tag is being set by which code.  Here is the final result:</li>
</ol>

<div class="wp_syntax"><div class="code"><pre class="html4strict" style="font-family:monospace;"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">body</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span>”top” <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span>”<span style="color: #000066;">height</span>: <span style="color: #cc66cc;">50</span>%;”&gt;</span>This is a Red box set by C#.<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
    <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span>”bottom” <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span>”<span style="color: #000066;">height</span>: <span style="color: #cc66cc;">50</span>%;”&gt;</span>This is Green box set by C++.<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span>
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">body</span>&gt;</span></pre></div></div>

<h3>Update the JavaScript</h3>
<p>Almost done!  The JavaScript code needs to be finished so it calls the two projects.</p>
<ol>
<li>In the <strong>Projects</strong> pane, expand the <strong>js</strong> folder under the <strong>WwaHybridProject</strong> and open <strong>default.js.</strong>  This code should be run as soon as the application loads, so it is put in the onactivated method.</li>
<li>The code to add is noted in inline comments below.  It first creates an instance of the <strong>CsharpLibrary</strong> project’s <strong>RedClass</strong> then uses a JavaScript document query to find the tag to update.  The background-color property of the tag’s style object is updated to the color “Red” which is returned from the C# code.  After that, an identical process is used for the C++ code.</li>
</ol>

<div class="wp_syntax"><div class="code"><pre class="javascript" style="font-family:monospace;">app.<span style="color: #660066;">onactivated</span> <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">function</span> <span style="color: #009900;">&#40;</span>eventObject<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>eventObject.<span style="color: #660066;">detail</span>.<span style="color: #660066;">kind</span> <span style="color: #339933;">===</span> Windows.<span style="color: #660066;">ApplicationModel</span>.<span style="color: #660066;">Activation</span>.<span style="color: #660066;">ActivationKind</span>.<span style="color: #660066;">launch</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #000066; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>eventObject.<span style="color: #660066;">detail</span>.<span style="color: #660066;">previousExecutionState</span>
<span style="color: #339933;">!==</span>     Windows.<span style="color: #660066;">ApplicationModel</span>.<span style="color: #660066;">Activation</span>.<span style="color: #660066;">ApplicationExecutionState</span>.<span style="color: #660066;">terminated</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #006600; font-style: italic;">// TODO: This application has been newly launched. Initialize</span>
        <span style="color: #006600; font-style: italic;">// your application here.</span>
        <span style="color: #009900;">&#125;</span> <span style="color: #000066; font-weight: bold;">else</span> <span style="color: #009900;">&#123;</span>
        <span style="color: #006600; font-style: italic;">// TODO: This application has been reactivated from suspension.</span>
        <span style="color: #006600; font-style: italic;">// Restore application state here.</span>
        <span style="color: #009900;">&#125;</span>
        WinJS.<span style="color: #660066;">UI</span>.<span style="color: #660066;">processAll</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
&nbsp;
<span style="color: #006600; font-style: italic;">//THIS IS THE CODE  YOU NEED TO ADD</span>
        <span style="color: #003366; font-weight: bold;">var</span> top <span style="color: #339933;">=</span> <span style="color: #003366; font-weight: bold;">new</span> CsharpLibrary.<span style="color: #660066;">RedClass</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        document.<span style="color: #660066;">querySelector</span><span style="color: #009900;">&#40;</span>“#top”<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">style</span>.<span style="color: #660066;">backgroundColor</span> <span style="color: #339933;">=</span> top.<span style="color: #660066;">getRed</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
&nbsp;
        <span style="color: #003366; font-weight: bold;">var</span> bottom <span style="color: #339933;">=</span> CplusPlusLibrary.<span style="color: #660066;">GreenClass</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
        document.<span style="color: #660066;">querySelector</span><span style="color: #009900;">&#40;</span>“#bottom”<span style="color: #009900;">&#41;</span>.<span style="color: #660066;">style</span>.<span style="color: #660066;">backgroundColor</span> <span style="color: #339933;">=</span> bottom.<span style="color: #660066;">getGreen</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #006600; font-style: italic;">//END OF CODE YOU NEED TO ADD</span>
&nbsp;
    <span style="color: #009900;">&#125;</span>
<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span></pre></div></div>

<h2>Test the project</h2>
<p>It’s time to test the project.</p>
<ol>
<li>Select <strong>Projects &gt; Run Project</strong>.  If everything worked out as planned, the display will show two large rectangles, the top of which is red, and the bottom of which is green.  JavaScript code using C# and C++ code. Wow.</li>
</ol>
<p align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/04/05-hybrid-result.png"><img class="aligncenter size-full wp-image-890" title="05-hybrid-result" src="http://blendinsider.com/wp-content/uploads/2012/04/05-hybrid-result.png" alt="" width="650" height="366" /></a></p>
<p>That&#8217;s it for this blog post.  In this blog was a walkthrough on how to create a WWA project that uses code from C# and C++.  This was obviously a very trivial example, but by following this example, many more interesting WWA projects can be created that leverage code from C# and C++.  Now go start writing some great WWA Windows 8 apps with native JavaScript code!</p>
<p>&nbsp;</p>
<p><strong>Steven Yackel</strong><br />
<strong>Software Developer in Test, Blend</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://blendinsider.com/technical/creating-an-html-metro-style-app-that-references-c-and-c-code-2012-04-13/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>XAML Authoring in Blend and VS: Workflow, tools, and tasks</title>
		<link>http://blendinsider.com/technical/xaml-authoring-in-blend-and-vs-workflow-tools-and-tasks-2012-04-02/</link>
		<comments>http://blendinsider.com/technical/xaml-authoring-in-blend-and-vs-workflow-tools-and-tasks-2012-04-02/#comments</comments>
		<pubDate>Mon, 02 Apr 2012 20:28:41 +0000</pubDate>
		<dc:creator>Joanna Mason</dc:creator>
				<category><![CDATA[Technical]]></category>
		<category><![CDATA[Version: Beta]]></category>
		<category><![CDATA[XAML]]></category>

		<guid isPermaLink="false">http://blendinsider.com/?p=845</guid>
		<description><![CDATA[On the Blend team we believe that deeper integration of design into software product planning and implementation will enable developers and designers to create great UX across desktop, web, and devices at a lower cost and with better productivity. Common app workflows Not everyone builds<div><a class="more-link" href="http://blendinsider.com/technical/xaml-authoring-in-blend-and-vs-workflow-tools-and-tasks-2012-04-02/">Continue Reading</a></div>]]></description>
			<content:encoded><![CDATA[<p>On the Blend team we believe that deeper integration of design into software product planning and implementation will enable developers and designers to create great UX across desktop, web, and devices at a lower cost and with better productivity.</p>
<p><span id="more-845"></span></p>
<h2>Common app workflows</h2>
<p>Not everyone builds apps the same way and our tools must provide the flexibility to support a variety of workflows. Here are a couple of examples of common workflows.</p>
<h4>Design first</h4>
<p>UX Designer/Developer produces a comp, prototype or starting application.</p>
<h4>Code first</h4>
<p>Developer provides a model which the UX Designer/Developer then uses to create the UX.</p>
<h4>Design &amp; Code</h4>
<p>The same user is creating the application end-to-end, or the UX Designer and Developer work hand-in-hand throughout the project.</p>
<h2>The right tools for the user and the task</h2>
<p>In order to best support all app developers and designers and workflows we now provide XAML authoring support in both Blend and Visual Studio, providing the right tools in the environment each user wants to work.</p>
<p>Visual Studio provides a great development tool with some design features that domain/enterprise and entrepreneurial developers will feel most at home. It is a code-centric environment but still provides the ability to edit app elements visually where it makes sense.</p>
<p>For a design-centric experience—for interaction designers, RIA developers, and the elusive “hybrid”—Blend provides even richer support for visual authoring that allows fine tuning and greater control over the styling and animation of their apps.</p>
<p>Of course, some tasks that are simply core to creating a XAML app must be available in both products, as illustrated in the image below.</p>
<p align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/04/DesignDevTasks-a.png"><img class="aligncenter size-full wp-image-848" title="Design and Dev Tasks in XAML authoring tools Blend and VS" src="http://blendinsider.com/wp-content/uploads/2012/04/DesignDevTasks-a.png" alt="Design and Dev Tasks in XAML authoring tools Blend and VS" width="650" height="319" /></a></p>
<h2>Feature Comparison</h2>
<p>The following table shows how these tasks map to the tools offered in each product for this release.</p>
<p align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/04/FeatureComparison-a.png"><img class="aligncenter size-full wp-image-847" title="Feature comparison between XAML authoring tools Blend and VS" src="http://blendinsider.com/wp-content/uploads/2012/04/FeatureComparison-a.png" alt="Feature comparison between XAML authoring tools Blend and VS" width="650" height="362" /></a></p>
<p>For Blend we focused on providing a richer toolset around styling and animation through the States pane and the Timeline while only providing a more limited support for Code and XAML editing which is provided at full fidelity in Visual Studio.</p>
<p>This is just the first release of both products leveraging some shared designer components. We plan to take this base and evolve each product based on feedback and targeted at each products unique users, workflow, and tasks.</p>
<p>Joanna Mason<br />
Lead Program Manager<br />
Blend</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blendinsider.com/technical/xaml-authoring-in-blend-and-vs-workflow-tools-and-tasks-2012-04-02/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Updated: Microsoft Expression Blend Preview for Silverlight 5</title>
		<link>http://blendinsider.com/version-expression-blend-4/updated-microsoft-expression-blend-preview-for-silverlight-5-2012-03-29/</link>
		<comments>http://blendinsider.com/version-expression-blend-4/updated-microsoft-expression-blend-preview-for-silverlight-5-2012-03-29/#comments</comments>
		<pubDate>Thu, 29 Mar 2012 18:09:48 +0000</pubDate>
		<dc:creator>BlendInsider</dc:creator>
				<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Version: Expression Blend 4]]></category>
		<category><![CDATA[SL5]]></category>

		<guid isPermaLink="false">http://blendinsider.com/?p=827</guid>
		<description><![CDATA[We are making available an updated version of Microsoft Expression Blend Preview for Silverlight 5. This release is identical to the previously released Expression Blend Preview for Silverlight 5, with three exceptions: The expiration date has been extended to June 30, 2013. This release now<div><a class="more-link" href="http://blendinsider.com/version-expression-blend-4/updated-microsoft-expression-blend-preview-for-silverlight-5-2012-03-29/">Continue Reading</a></div>]]></description>
			<content:encoded><![CDATA[<p>We are making available an updated version of <strong>Microsoft Expression Blend Preview for Silverlight 5</strong>. This release is identical to the previously released Expression Blend Preview for Silverlight 5, with three exceptions:<br />
<span id="more-827"></span></p>
<ul>
<li>The expiration date has been extended to June 30, 2013.</li>
<li>This release now comes with a go-live license that allows you to distribute the software that you create with this release to your customers, along with any components you might use from the Blend SDK for Silverlight 5. More information about this can be found in the updated End-user license agreement that comes with the product.</li>
<li>We updated the Silverlight 5 SDK that is installed with Blend to the RTM version of Silverlight 5.</li>
</ul>
<p>Before installing this release, please uninstall any previous version of Blend Preview for Silverlight 5, or Blend SDK Preview for Silverlight 5. You do not need to uninstall the Silverlight 5 runtime, Silverlight 5 SDK, or the Visual Studio tools for Silverlight 5.</p>
<p>You can download this release from the Microsoft Download Center: <a href="http://www.microsoft.com/download/en/details.aspx?displaylang=en&amp;id=9503">Microsoft Blend Preview for Silverlight 5</a>.</p>
<blockquote style="font-style:normal"><p><strong>Update</strong>: A few of you have reported issues where the updated Expression Blend Preview for Silverlight 5 shows the expiration dialog, even after uninstalling the older release and updating to this one. <strong>We have resolved this issue, and updated the download site.</strong> There are no additional fixes in the release, so if your version of Blend Preview for Silverlight 5 is already working fine, no additional action is necessary on your end.</p></blockquote>
<p>Thanks,<br />
The Blend Team</p>
]]></content:encoded>
			<wfw:commentRss>http://blendinsider.com/version-expression-blend-4/updated-microsoft-expression-blend-preview-for-silverlight-5-2012-03-29/feed/</wfw:commentRss>
		<slash:comments>58</slash:comments>
		</item>
		<item>
		<title>Designing for Multiple Views and Orientations using Blend</title>
		<link>http://blendinsider.com/technical/designing-for-multiple-views-and-orientations-using-blend-2012-03-22/</link>
		<comments>http://blendinsider.com/technical/designing-for-multiple-views-and-orientations-using-blend-2012-03-22/#comments</comments>
		<pubDate>Thu, 22 Mar 2012 22:17:04 +0000</pubDate>
		<dc:creator>Kirupa Chinnathambi and Jeffrey Ferman</dc:creator>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Version: Beta]]></category>
		<category><![CDATA[XAML]]></category>

		<guid isPermaLink="false">http://blendinsider.com/?p=795</guid>
		<description><![CDATA[When you are designing new apps, you will want to make sure they can be viewed across various orientations and states.  For a detailed discussion about design considerations for view states, orientations, and resolutions in Windows 8 be sure to read Scaling to different screens<div><a class="more-link" href="http://blendinsider.com/technical/designing-for-multiple-views-and-orientations-using-blend-2012-03-22/">Continue Reading</a></div>]]></description>
			<content:encoded><![CDATA[<p>When you are designing new apps, you will want to make sure they can be viewed across various orientations and states.  For a detailed discussion about design considerations for view states, orientations, and resolutions in Windows 8 be sure to read <a href="http://blogs.msdn.com/b/b8/archive/2012/03/21/scaling-to-different-screens.aspx">Scaling to different screens</a> on the Building Windows 8 blog and <a title="Getting the most out of your pixels--adapting to view state changes" href="http://blogs.msdn.com/b/windowsappdev/archive/2012/04/19/getting-the-most-out-of-your-pixels-adapting-to-view-state-changes.aspx">Getting the most out of your pixels&#8211;adapting to view state changes </a> on the Windows Application Developer blog.<span id="more-795"></span></p>
<p>The two orientations are portrait and landscape:</p>
<p align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/03/vo-portraitlandscape.png"><img src="http://blendinsider.com/wp-content/uploads/2012/03/vo-portraitlandscape.png" alt="" title="vo-portraitlandscape" width="400" height="290" class="aligncenter size-full wp-image-1009 no-border" /></a></p>
<p>The view states are:</p>
<p align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/03/view-states-full-snapped-fill1.png"><img class="aligncenter size-full wp-image-803 no-border" title="view-states-full-snapped-fill" src="http://blendinsider.com/wp-content/uploads/2012/03/view-states-full-snapped-fill1.png" alt="" width="450" height="401" /></a></p>
<p>You can also learn more about <a href="http://msdn.microsoft.com/en-us/library/windows/apps/hh465386(v=VS.85).aspx">Supporting multiple views</a> by reading the detailed document on the Windows Developer Center.</p>
<p>When you are building your apps, you are likely to be using Blend on a laptop or a monitor whose orientation is in Landscape. What you need is a way to design your application inside Blend while simulating the various views states and orientations at design-time.</p>
<h1>Views inside the Platform Panel</h1>
<p>To help you design applications that take advantage of view states and orientations, Blend enables you to select different preview views in the Platform panel.</p>
<p align="center"><a href="http://blendinsider.com/wp-content/uploads/2012/03/platform-panel-views.png"><img class="aligncenter size-full wp-image-798 no-border" title="platform-panel-views" src="http://blendinsider.com/wp-content/uploads/2012/03/platform-panel-views.png" alt="Blend Platform panel showing view state selection" width="299" height="214" /></a></p>
<p>The Views section contains four buttons, and these four buttons correspond to the view states and orientations that your application can find itself in.</p>
<p>From left to right, these buttons correspond to:</p>
<ol>
<li>Full screen + Landscape</li>
<li>Fill</li>
<li>Snapped</li>
<li>Full screen + Portrait</li>
</ol>
<p>When you click each button, your artboard is resized to match the expected size of your application when you run it.</p>
<p>For example, here is what your artboard looks like when you are in the Snapped view state:</p>
<p align="center">  <a href="http://blendinsider.com/wp-content/uploads/2012/03/artboard-snapped-view1.png"><img class="aligncenter size-full wp-image-801 no-border" title="artboard-snapped-view" src="http://blendinsider.com/wp-content/uploads/2012/03/artboard-snapped-view1.png" alt="Blend artboard showing app in Snapped view state" width="650" height="349" /></a></p>
<p>Pressing each of the other buttons will not only resize your artboard into the appropriate dimension, your application inside Blend will react to this new view state just as it would in the simulator or on an actual device—for both HTML and XAML-based apps.</p>
<h2>What Happens in HTML</h2>
<p>In an HTML-based application, if you have any media queries that react to the views or orientations, the appropriate media queries will become active. If you have any JavaScript that subscribes to the events for orientation or view state changes, that JavaScript will also run. Any code you may have written to poll for the application’s current view or orientation will return the updated value as well.</p>
<h2>What Happens in XAML</h2>
<p>In a XAML-based application, any control that responds to the ViewStateChanged event will update on the artboard.  We will also update the width and height of the root control hosting your current page or UserControl to match what the values would be at runtime.  These changes will be made for any XAML document that has a Page as its root element.  If you would like to see the Device Chrome and be able to change views for UserControls and other elements, simply add d:ExtensionType=”Page”  as an attribute on the root element.</p>
<p>Let us know what you think about this feature. If you have any feedback on what you like / don’t like / etc., do let us know as well by either commenting below or e-mailing us directly at <strong><em>kirupac[at]microsoft.com</em></strong> and <strong><em>jferman[at]microsoft.com</em></strong>.</p>
<p>Cheers,</p>
<p>Kirupa Chinnathambi, Jeff Ferman</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://blendinsider.com/technical/designing-for-multiple-views-and-orientations-using-blend-2012-03-22/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Creating HTML-based Metro style apps using Blend Beta</title>
		<link>http://blendinsider.com/technical/creating-html-based-metro-style-apps-using-blend-beta-2012-03-20/</link>
		<comments>http://blendinsider.com/technical/creating-html-based-metro-style-apps-using-blend-beta-2012-03-20/#comments</comments>
		<pubDate>Tue, 20 Mar 2012 18:08:47 +0000</pubDate>
		<dc:creator>Heather Brown</dc:creator>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[Technical]]></category>
		<category><![CDATA[Version: Beta]]></category>

		<guid isPermaLink="false">http://blendinsider.com/?p=791</guid>
		<description><![CDATA[A couple of weeks ago, we announced the availability of Blend for Visual Studio 11 Beta, which is included with Visual Studio 11 Beta Express for Windows 8 (as well as the Professional, Premium, and Ultimate versions of Visual Studio 11 Beta).  Together, Blend and<div><a class="more-link" href="http://blendinsider.com/technical/creating-html-based-metro-style-apps-using-blend-beta-2012-03-20/">Continue Reading</a></div>]]></description>
			<content:encoded><![CDATA[<p>A couple of weeks ago, we announced the availability of <strong>Blend for Visual Studio 11 Beta</strong>, which is included with Visual Studio 11 Beta Express for Windows 8 (as well as the Professional, Premium, and Ultimate versions of Visual Studio 11 Beta).  Together, Blend and Visual Studio 11 provide the tools for creating Windows 8 Metro style apps.<span id="more-791"></span></p>
<p>If you haven’t yet, you can download the <a href="http://windows.microsoft.com/en-US/windows-8/consumer-preview">Windows 8 Consumer Preview</a> and the <a href="http://msdn.microsoft.com/en-us/windows/apps/br229516">developer tools</a> to get started building your own apps. While the Blend Beta supports creating both HTML-based and XAML-based apps, this post focuses on the tools for working with HTML/CSS/JavaScript.</p>
<p>When you start building your own Metro style apps with Blend using HTML, you’ll notice right away that Blend is no ordinary code editor. In fact, it’s not simply a code editor.  The HTML authoring features in Blend are designed to help professional web designers and developers become exceptionally productive while creating production quality code.</p>
<p>Blend combines the tools of the trade—design surface, code editor, and rich diagnostics tools—into a single authoring experience so there’s no need for round-tripping amongst a collection of tools.  The tools you need during the design/development cycle are at your fingertips.</p>
<p>The Blend design surface gives you an accurate representation of your running application (yes, Blend runs your JavaScript code on the design surface so that even dynamically generated content looks just right). The code editor keeps the relevant HTML and CSS in view as you work on the design surface, and you have an extensive set of panels that provide diagnostic tools and editing aids.  This combination of markup tools and visual design tools partners with Visual Studio 11 for heavy JavaScript coding and debugging to provide you with a complete toolbox to get started creating Metro style apps.</p>
<h2>Working with HTML-based Apps on the Blend Design Surface</h2>
<p>The design surface in Blend for HTML authoring is optimized to promote visual design directly on the artboard.  You can create new layouts directly on the design surface.  You can select elements and examine applied style, edit styles, and create new styles.  You can also view the elements in the Live DOM.</p>
<p>While you are authoring, you can work in split view, with your related HTML and CSS file editors open.  We’ve worked hard to ensure that visual editing gestures result in clean, semantic code.  Our goal is to make it as close to the kind of professional code you’d write yourself as possible.</p>
<h2>Interactive Mode on the Blend Design Surface</h2>
<p>JavaScript-based applications are interactive by design.  Pages and content are typically assembled at runtime and frequently have no static representation.  Blend provides you with <strong>Interactive Mode</strong> for projects that include JavaScript so you can interact directly with your app, and “pause” at a particular state so you can style it. This little gem makes styling the different states of your dynamic pages and JavaScript controls easy. Now, finally you can actually see what you are styling when you are working with JavaScript-generated content and controls. You don’t need to tweak your CSS, and then go check your work in your browser. You can just change your CSS and see what’s going on all at the same time in a single workspace.</p>
<h2>Working with HTML-based Apps with Code Editor: Related Files</h2>
<p>Another one of my favorite features is Related Files. When you are in split view (you have the code editor open, and the design surface open) you can see all of the files that are used by your Metro style app. So, as you look at your HTML mark-up in the code editor, you can also look at the CSS or JavaScript associated with that markup, and you can still view your app on the design surface.</p>
<p>As you move around the design surface interacting with elements, Blend keeps the related HTML and CSS files in sync so you can always view the code while you are engaged in visual editing.</p>
<h2>Diagnostic and Productivity Tools</h2>
<p>Blend also offers multiple ways to work with styles, from productivity to diagnostics.  You can examine which styles are already applied to an element with the Applied Styles list at the top of the CSS Properties panel.  You can also work with the Styles panel to create, and modify style rules.</p>
<p>The Platform panel supports authoring related to some of the concepts specific to Metro style apps.  For example, you can easily design for different app views and orientations, and device resolutions.</p>
<h2>The Live DOM</h2>
<p>In addition to the design surface, the Live DOM panel makes it easy to see the structure of your document and interact with it. You can click on an element in the DOM and the element is also selected on the design surface and in the code editor. Additionally, the associated rules, attributes, and properties are also shown in the Styles Panel, CSS Properties Panel, and HTML Attributes Panel.</p>
<h1>Before You Begin: Key Concepts for Creating HTML-based Metro Style Apps</h1>
<p>Before you get started, there are a few things that you should know about Metro Style Apps:</p>
<p><strong>Web Apps</strong>. If you are used to creating Web sites –which are document-based and static – it’s time to check out the <a href="http://msdn.microsoft.com/en-us/library/windows/apps/br211386.aspx">Metro style apps</a> that you can build for the Windows 8 Consumer Preview.  Metro style apps are dynamic, data driven, and interactive. You can build them using the HTML and JavaScript that you already know and love.</p>
<p><strong>CSS3.</strong> If you haven’t done it yet, check-out <a href="http://msdn.microsoft.com/en-us/library/windows/apps/hh453285.aspx">CSS3</a>. Good Metro style apps take full advantage of all the new and powerful concepts that CSS3 has to offer like Grid, Flexbox, and, border radius, transforms, gradients, box-shadows, and transitions.</p>
<p><strong>WinJS. </strong>Windows Metro style apps introduce a new library of Javascript controls. You can get familiar with them using the <a href="http://msdn.microsoft.com/en-us/library/windows/apps/hh465493.aspx">Quickstart: Adding WinJS controls and styles</a>.</p>
<p><strong>Windows Metro Style Apps user experience</strong>. Windows Metro style apps follow concrete user experience concepts. Check out the <a href="http://msdn.microsoft.com/library/windows/apps/hh779072">Windows Design Center</a> for guidance and resources for creating great Metro style apps.  Check out the <a href="http://windowsteamblog.com/windows/b/windowsexperience/">Windows Experience</a> blog for more info about the platform experience.</p>
<p>So, check out the above resources, try out some of the great tutorials on the <a href="http://msdn.microsoft.com/en-us/windows/apps/">Dev Center for Metro style apps</a> for building apps, and then check back here at <a href="http://www.blendinsider.com">http://www.blendinsider.com</a> and start styling your Metro style app.</p>
<p>Heather</p>
]]></content:encoded>
			<wfw:commentRss>http://blendinsider.com/technical/creating-html-based-metro-style-apps-using-blend-beta-2012-03-20/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Insider’s view: Authoring XAML-based Metro style apps in Blend Beta</title>
		<link>http://blendinsider.com/xaml/insiders-view-authoring-xaml-based-metro-style-apps-in-blend-beta-2012-03-16/</link>
		<comments>http://blendinsider.com/xaml/insiders-view-authoring-xaml-based-metro-style-apps-in-blend-beta-2012-03-16/#comments</comments>
		<pubDate>Fri, 16 Mar 2012 21:02:03 +0000</pubDate>
		<dc:creator>Joanna Mason</dc:creator>
				<category><![CDATA[Version: Beta]]></category>
		<category><![CDATA[XAML]]></category>

		<guid isPermaLink="false">http://blendinsider.com/?p=782</guid>
		<description><![CDATA[We’re excited to see that many of you have started creating XAML-based Metro style apps using Blend. Our top priority was to get this early version of the tooling out to you as soon as possible so that you could get a picture of how<div><a class="more-link" href="http://blendinsider.com/xaml/insiders-view-authoring-xaml-based-metro-style-apps-in-blend-beta-2012-03-16/">Continue Reading</a></div>]]></description>
			<content:encoded><![CDATA[<p>We’re excited to see that many of you have started creating XAML-based Metro style apps using Blend. Our top priority was to get this early version of the tooling out to you as soon as possible so that you could get a picture of how you will be able to use Blend to create your XAML-based Metro style apps. This first release of Blend for XAML has a few bugs, some stability issues and it maintains a quality level more consistent with a Preview than a Beta. We are hard at work making improvements and stabilizing the product so you will see significant improvement in the next publicly available release. Of course, I can’t tell you when that will be <img src='http://blendinsider.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  but keep the feedback coming on our <a href="http://social.msdn.microsoft.com/Forums/en-US/category/windowsapps">discussion forums</a> and by <a href="http://connect.microsoft.com/blend">filing bugs</a>, as it will help us make sure we shake out all of the issues.<span id="more-782"></span></p>
<p>In this post I’ll give you an inside view into some of the implementation details and prioritization considerations that we employed so we could light up support for Windows 8 Metro style apps using XAML in Blend.</p>
<h2>Comparing Blend support for Metro style apps to other platforms</h2>
<p>There are a few features that you may have gotten used to creating when creating SL, WPF and Windows Phone apps in Blend that are not available when creating Metro style apps. Rest assured that our goal is to provide the same level of rich functionality and visual authoring capabilities for Metro style apps as you currently have for Windows Phone, Silverlight and WPF applications, we just have not had the time to get there with this first version of authoring support for Metro style apps.</p>
<h2>Core authoring capabilities</h2>
<p>For this release, we focused on core authoring capabilities that are shared with the Visual Studio XAML designer including object creation, layout, property editing and rich design times for controls specific to Metro style apps. We then prioritized enabling authoring visual states and creating animations for your applications using Blend. We made sure that Visual Studio provided the richest support for editing your XAML and code-behind files and are providing only minimal support for using a text-based editor to edit these files in Blend for Metro style apps.</p>
<h2>Blend SDK</h2>
<p>We are not including support for the features available in the Blend SDK for this release. The Blend SDK includes features like Behaviors, font embedding, PathListBox and Shapes. We understand that Behaviors are an important part of your workflow for creating applications in Blend and we are already working on adapting our interactivity features so that they are available from both native and managed projects, in a pure WinRT fashion.</p>
<h2>Additional Features: Sample Data and Illustrator Import</h2>
<p>A couple of other areas that you may have used previously are creating Sample Data using the Data Pane and Illustrator import. While we won’t have support for either of these features in this release, you can use a previous release of Blend side by side with Blend for Windows 8 to generate sample data or to create XAML for your vector assets from Illustrator. There will be a follow up post detailing the differences and the minor tweaks you will need to make the files compatible with your Metro style app.</p>
<h2>Prototyping</h2>
<p>For this release we focused on getting the tools for building production-quality Metro style apps in your hands. Of course a very important part of building a great user experience is the ability to rapidly prototype and iterate on the design of an application using SketchFlow. While we are not providing a version of SketchFlow specific to Metro style apps, our commitment to iterative design and rapid prototyping is unchanged.</p>
<h2>In Closing</h2>
<p>Hopefully I’ve been able to provide you with a little more context about what is currently supported and reassured you of the Blend team’s commitment to visual authoring and enabling you to create great user experiences.</p>
<p>I am personally very excited to see how all the talented application designers out there will take the Metro style guidelines and maximize a touch-first interface to create useful, usable and visually compelling apps for Windows 8 using Blend!</p>
<p>Joanna Mason</p>
<p>Lead Program Manager</p>
<p>Blend</p>
]]></content:encoded>
			<wfw:commentRss>http://blendinsider.com/xaml/insiders-view-authoring-xaml-based-metro-style-apps-in-blend-beta-2012-03-16/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

