Home > Development > features
In this excerpt from the recently released Essential Silverlight 2 Up-to-Date, author Christian Wenz asks, " an XML editor would be enough to create Silverlight applications but who would want to do that?” Instead, he outlines three different kinds of Silverlight tools: XML editors, vector graphics editors, and Silverlight IDEs.
As you saw in the previous chapter, there is no kind of compilation or binary data with Silverlight. All you need to create them are these three kinds of files:
- • XAML files to contain the Silverlight content
- • JavaScript files with additional code for the Silverlight content and code to control and access the Silverlight content
- • HTML files to present the Silverlight content
Therefore, we will introduce three kinds of editors in this chapter that should be helpful when creating Silverlight applications. For each kind of editor, we briefly introduce one specific editor and also have a look at the competition, if there is any.
XML Editors
For editing XAML, a mighty XML editor should be enough. There are many good ones out there, including <oXygen/> and XMLSpy. Even Microsoft has a dedicated XML editor now, XML Notepad 2007 (available here at Microsoft see Figure 1.4-1). Thanks to the availability of an XML schema for XML, code completion is at least theoretically possible. As you saw in the previous chapter, Visual Studio 2005 offers IntelliSense as well, and you get even more IntelliSense (including JavaScript code) in Visual Studio 2008.
The one thing pure XML editors are always lacking is WYSIWYG functionality. Many of them try to use CSS and/or XSLT to convert the XML into something viewable (including the XML editor I am using to write this book), but for Silverlight that’s not a feasible option. An editor that does both is, of course, a better option. You may want to have a look at Spket IDE. It is free for noncommercial use and offers both JavaScript and XAML code completion. Figure 1.4-2 shows the XAML editor of Spket IDE in action.
Vector Graphics Editors
Silverlight graphics are vector-based, compared to regular web sites where images are usually pixel-based. In all fairness, Silverlight also supports pixelized graphics, but vector graphics have some advantages: no quality loss when scaling, for instance. There are several vector graphics editors, but very few of them currently support XAML. Microsoft Design was one of the first to do so and it is part of the Microsoft Expression Studio. At http://www.microsoft.com/expression/products/download.aspx?key=design you will find more information about it and can download a time-bombed trial (60 days). Microsoft Design can import a series of other formats and also export to a few, including XAML, as Figure 1.4-3 shows.
Silverlight IDEs
With Flash, the name refers to the browser plug-in (and the associated file format) and for the mighty editor or IDE that allows creation of these rich Internet applications (RIAs). So, it was just a matter of time until Microsoft would release a similar tool that tried to bridge the gap between designers and developers and appeals to both groups. Microsoft Expression Blend is also part of the Microsoft Expression Studio. The first version targeted WPF developers and did not offer anything for Silverlight developers (or WPF/E developers, as they were called then). However, Expression Blend for Silverlight 2 changes that. (Up-to-date links to a trial version of that software will be available at http://silverlight.net/.)
When you set up a new project, one of the options is to create a Silverlight JavaScript application (see Figure 1.4-4). If you look closely at the project structure in Figure 1.4-5, you will see that it looks quite similar to the project based on the Silverlight Visual Studio template you saw in 1.2.

Expression Blend 2 is somewhat integrated with Visual Studio. Double-clicking on a JavaScript file in the project explorer opens it in Notepad (the Windows editor), but when working with event handlers (see 2.2 for more technical information about that), you can set how Visual Studio 2008 handles them, as Figure 1.4-6 shows. Alternatively, Expression Blend 2 can also provide the skeleton code for event handlers in the clipboard so that you can use them in any other arbitrary application. It is possible that future versions of Expression Blend 2 will facilitate integrating external applications.

Visual Web Developer 2005 Express Edition may also be used as an event handler code editor.
Although Expression Blend 2 is still far from perfect (Adobe Flash has had several years to raise the bar), it is currently the best choice for Silverlight developers in search of some visual help for developing their applications, especially from a design perspective. Now it’s time to dive more deeply into Silverlight, and how you create rich user experiences with WPF and XAML, the subject we explore in Part 2.
Further Reading
An overview of Microsoft’s Expression line of products







who wants to use a cheesy microsoft cop-off of flash and or flex?
I do!
Me too !
Cheesy? I'm as big fan of Adobe toolsets as anyone, but Microsoft has some advantages here, one, they're not supporting 10 year old legacy Flash player (can you say multi-threading in Silverlight v2.0). Can you say, choose you're language: C#, VB.NET, IronPython, Ruby? There are many more. And Adobe still has some advantages, too, like their designer to developer workflow. Anyway, Microsoft's the new kid on teh block at this, but guess what, their developer community is probably 100x Adobe's....they'll move quickly. I'm predicting there will be so many 3rd party controls for quickly building SIlverlight applications, plus all those companies already heavily using Microsoft software, but aren't willing to add Adobe into the stack, will finally get some RIA technology on their side. If it runs well on both OSX and Windows, I'll have no problems with it.
Not to mention, competition is good. It gives people choice. It causes lots of innovation, quickly. Do you think Adobe would have released their flash player capable of playing HD video so quickly if Microsoft's Silverlight media player didn't come out swinging last year with their killer quality video?
In the next couple of years, RIA is going to advance quickly because we have two huge companies (3 if we count Java's RIA thing). I appreciate the competition.
Microsoft might try to copy Flash/Flex but I see it as a good thing. I'm not a big fan of adobe's online doc, more if compared to whatever msdn has to offer.
And I agree with Todd totally.