The .NET Platform
Development Tools
COM & COM+
Data Access
Web Development
XML Technologies
Windows Servers
Wireless & Mobile
Security issues
Design & Process
Career Development
Analysis & Comment
Disposable Objects
You are not logged in: login here to access all areas.
Preview versions of a new set of designer tools, and of the WinFX runtime and the Visual Studio 2005 toolset, mean you can start developing WinFX applications right now. We talk to Wayne Smith, senior product manager for the Microsoft Expression range in the EMEA region, about these new releases, about WinFX and XAML, and how they will affect developers who are currently working with Win32 applications.
Author: Matt Nicholson
Last updated: Feb 2006
Wayne: Following our announcement at last year’s Professional Developers Conference in Los Angeles, we have now released a public preview of Expression Interactive Designer, which is the final name for the product originally codenamed ‘Sparkle’. At the same time we have released a new CTP of Expression Graphic Designer (formerly known as ‘Acrylic’) with a raft of bug-fixes and improvements. In particular the XAML exporter is quite a lot more fully featured and links in with Interactive Designer as a mechanism for getting graphics into the user-interface environment. Matt: Is that achieved through XAML? Wayne: Yes. Graphic Designer has a XAML exporter that will do the best job it can (depending on the content) of converting your graphics into XAML. The XAML can then be directly added to your project in Interactive Designer. Matt: Is XAML the native format for these two products? Wayne: It’s certainly the native language for Interactive Designer. That is the whole point of Interactive Designer: it is a tool for creating XAML. Graphic Designer has its own native file format but will export to a range of standard graphic formats such as PNG, GIF and JPEG. It also has a XAML exporter which you would use if you are specifically targeting WinFX. It’s the best mechanism for getting graphics into the XAML format that you need to work with WinFX. Matt: What happens if you want to export something from Graphics Designer that you want to use in a WinFX application but that can’t be expressed in XAML? Wayne: The exporter offers a range of options for how you want that handled –whether you want it to have a go at rendering the graphic in vector form, or have it exported as a bit-map PNG file, for example. There’s no reason why you can’t use PNG files in the WinFX environment, although of course to get the best quality and the best rendering we do suggest that you keep it in a vector format. However if it’s a photograph, for example, then obviously it has to be in a bit-map format and PNG is the one that most people tend to use. Matt: But if it is possible to express it in a vector format then it can be expressed as XAML. Wayne: Yes, absolutely. Graphic Designer has features like the Live Effects that add effects like blurring and fringing. Some of these can be expressed as vectors by doing conversions and calculations, but others can’t. Initially for a lot of people it’s going to involve trial and error to see what works and what doesn’t. Defining WinFX Wayne: WinFX is a brand-new set of managed APIs for creating the next generation of Windows applications. You can also create Web-hosted applications, but the main point of WinFX is to create Windows applications. It will be released at the same time as Windows Vista (the next version of the Windows client operating system), although the components that you need to run WinFX applications will be available for Windows XP and Server 2003. So it is backwardly compatible one generation, but WinFX is all about strengthening the Vista platform for the future. Matt: What are the components that you need to run WinFX applications? Wayne: WinFX is a set of managed APIs that has four ‘pillars’. The first is the existing .NET Framework 2.0; that’s part of WinFX. Then there are three new pillars: the Windows Presentation Foundation (formerly codenamed ‘Avalon’), the Windows Communication Foundation (formerly codenamed ‘Indigo’) and the Windows Workflow Foundation. Our Expression Interactive Designer tool specifically targets Windows Presentation Foundation (WPF) through the XAML language. Matt: Is it extensions for .NET Framework 2.0, or is it .NET Framework 3.0? Wayne: It’s new capabilities that work alongside .NET Framework 2.0 – new classes, new namespaces. Matt: I have heard it described as the managed version of the Win32 API. Wayne: Technically that’s not correct, but I think the spirit of that statement is true. For instance, you can’t work in 3D using the current set of .NET Framework APIs, but with WinFX you can. Today you have to write native code to work with Direct3D, but with WinFX you’ve got access to the power of Direct3D through a set of managed APIs. That’s just one example as WPF also supports video and multimedia. And then of course the Windows Communication Foundation (WCF) gives you access to a huge set of APIs for dealing with Web Service and such like as well. Matt: But presumably, under the hood, WinFX is talking to Win32? Wayne: WinFX is talking to a whole heap of things. There’s a mechanism within WinFX mechanism which manages interaction with device drivers and such things. For example, say you want to put controls on a 3D surface. There’s a composition engine within the framework that manages all that for you, so you just write XAML and the composition engine does all the clever stuff of talking to the accelerated hardware under the hood so that you don’t have to think about it. You can write C# or Visual Basic as well, but XAML is easiest. Beforehand you’d be deep in Direct3D, but now you can achieve the same thing with fairly straightforward mark-up and let WinFX take care of how it actually happens. Matt: What is the current status of WinFX? What is available now for actually creating and running a WinFX application? Wayne: People are good to go with what we’ve released to date. We recently released the February CTP of WinFX which is now pretty much feature-complete, so anything that people do with it shouldn’t break between now and final release. That said, there may of course be one or two little things that do break because of bug-fixes, but we have announced Go-Live licences for the Windows Communication Foundation and the Workflow Foundation, so we are getting to the finished state with those. Matt: What does a Go-Live licence give you? Wayne: A Go-Live licence is basically a permission to deploy content in a real live environment, although you do need to read the full details of the Go-Live licence before you do that (which you will find at the WinFX Web site). It’s at your own risk, of course. Matt: The Graphic Designer isn’t, is it? Wayne: No – that’s based on the Creature House product that we purchased. The initial version of Expression Web Designer won’t be either. However lots of teams within Microsoft are looking at how they can use WinFX technology for their applications. Designing for the Web Matt: How does the announcement of Expression Web Developer affect the long-term future of Microsoft FrontPage? At the moment they do seem to be fulfilling the same roles. Wayne: As you know, FrontPage is part of the Office suite of products which is an entirely separate division within Microsoft. I believe they have made some announcements on this [Click here for further details]. Matt: Presumably you could use Graphic Designer to produce graphics for a Web site by exporting as GIFs or JPEGs? Wayne: Absolutely! Matt: Would Interactive Designer be any use in an ASP.NET application? Wayne: No, although there’s no reason why you couldn’t have a Web site host an XBAP [XAML Browser Application] which is the Web version of a WinFX application, within the confines of an ASP.NET page. Matt: If an XPAB is hosted in the browser then presumably there needs to be a runtime? Wayne: They would need the WinFX runtime components installed on the client machine. Matt: If you’re developing WinFX applications, what are your target platforms beyond Windows Vista itself? Wayne: WinFX will run on Windows Vista, Windows XP, Windows Server 2003, and we know people are writing things ranging from kiosk-based marketing materials right through to line-of-business applications. If you’re creating an application using WinFX, and you want that application available for local install across intranets or whatever, or you’re selling it on a physical medium such as a CD, then you can distribute the WinFX components that you need to make it run. WPF Everywhere Wayne: That’s a little way in the future. WPF/E will make a subset of the WPF available to other platforms and to a range of devices which have yet to be decided, although I think we have announced that it will be available for the Apple Macintosh. Build work is proceeding but at the moment it’s very much at the stage of being defined and specified. There aren’t any dates attached to it yet, but I can say that it certainly won’t be a reality in the immediate Vista timeframe, so for instance it’s not something that Expression Interactive Designer will initially target. It’ll be a future version of Interactive Designer that will work with WPF/E. Matt: How would you compare the concept of WPF/E with Macromedia’s Flash Player? Wayne: I wouldn’t say it’s a big overlap. WPF/E is really intended to provide additional reach for existing WinFX applications – to extend the reach of a sales application to mobile devices for example. Matt: The similarity is that Flash is a development platform that is richer than straight HTML, and it’s available on a fairly wide range of platforms. Wayne: It is, but it’s a player technology. WinFX is part of the Windows platform, going forward from Windows Vista. Ours is more of a platform story than a player technology. Yes, the WPF/E will also be in effect a player, but it is designed to extend the reach of WPF, rather than being a separate entity in itself. Matt: But if you’re making WPF/E available on a Macintosh, for example, that’s not a Windows environment. Wayne: If you had salesmen at home who wanted to access a company’s applications from a Macintosh, that would be a perfect example of how a WPF client for the Macintosh would used. Matt: So in the Vista timeframe, developers will have the option of building two types of application: they can build a WPF application, which gives them a very rich environment on a Windows platform; but if they want to build something that can be used from the Macintosh, or from Linux or whatever, then they will be using ASP.NET and perhaps AJAX, as that is your technology for building Web-based applications. So in the near future developers can look at building a XAML/WPF application, or an ASP.NET/‘Atlas’ application which enables them to target a much wider range of platforms. Wayne: Yes, and of course with a WinFX executable that has full trust, they will have access to the full capabilities of the operating system. All the things you can currently do in a Win32 application today, you will be able to do in this new environment, but the development process for it will be much nicer. Matt: There is an analogy between the Expression range and Macromedia’s range of products. It’s easy to draw a parallel between the Graphic Designer and Fireworks, and there’s an obvious parallel between the Web Designer and Dreamweaver. Wayne: Absolutely, but where we’re different is that we’re not trying to be technology-agnostic. We are very clearly in the ASP.NET camp with Web Designer, and we drill down very heavily into it. You’ve got full access to all the ASP.NET controls, for example. The future for Windows Forms Wayne: We’ve certainly made no announcements about discontinuing the technology at all, and a lot of people will choose to develop that way. Of course we’re hoping that people are going to see this brave new world and want to move to it. There are ways that you can integrate Win32 applications with the new world, so it’s not like they’re being shut out. Matt: But do you see a time when Windows Forms applications have problems running on future platforms? Wayne: I’m confident they won’t have trouble running. I think it’s more likely that their competitors will have produced really nice-looking WinFX applications which will start them thinking that they should refresh the user experience of their application by moving to WinFX. There’s no question that Win32 applications will continue to run successfully under Vista. There’s too many of them out there for it not to be a priority for us. Open standards Wayne: XAML is just a text-based XML language – it’s as open as it possibly can be. Matt: So’s HTML, but that’s governed by a standards body. Wayne: I’d be second-guessing the people in Redmond as to their attitude towards that, but I’ve not seen any announcements. As a company it’s our declared intention to be as open as we can, but we don’t have any announcements today. Matt: If that was the case then you could see somebody using Interactive Designer to produce a very rich user interface and generating the XAML which they then put into a third-party engine that allows it to run on a Linux platform, for example. Wayne: I don’t see any reason why that couldn’t and shouldn’t happen. One of the great things about XAML is that it’s incredibly easy for tools to support, which is why we’ve already seen so many XAML exporters announced for third-party tools. Just about every 3D tool publisher has announced they’re producing a XAML exporter. The main example that exists at the moment is from Electric Rain which has a tool called Swift 3D. Electric Rain has built a version called ZAM 3D that’s optimised around XAML and produces XAML code. It’s a perfect way of getting 3D objects into a WinFX project. Microsoft Office SharePoint Designer 2007 15 Feb 2006 – Microsoft has announced that its FrontPage 2003 product is to be “gradually discontinued” with full support maintained until June 2008. It is also to launch SharePoint Designer 2007 as part of the 2007 Microsoft Office System (formerly codenamed Office ‘12’) in the second half of this year. Current FrontPage customers will be offered special upgrade terms.
Matt: Taking a step back, how would you define WinFX?
So WinFX is the next level for people who have been developing managed code using the .NET Framework. It’s a superset of the .NET Framework.
The idea is really that, however a complex UI you choose to create, or however a complex line-of-business application, you should now be able to do it using the WinFX APIs.
So we’re pretty much into the end game now in terms of the underlying infrastructure. We’re into the optimisation and bug-fix stages. Furthermore, with the recent release of a version of Visual Studio codenamed ‘Cider’, people now have access to all of the tools that Microsoft is going to release for working with WinFX, in pre-release form. We are aware of dozens of ISVs who are busy working on WinFX right now, although we’re not in a position to make any announcements because people like to keep that kind of thing under the hood until they’re ready. But there’s plenty of people out there doing it.
And then of course Expression Interactive Designer is itself a WinFX application.
Matt: I understand that Expression Web Designer is a tool for producing ASP.NET 2.0, so presumably it doesn’t produce XAML?
Wayne: Correct – Expression Web Designer is a traditional Web design tool. We’re trying to provide a range of designer tools for both traditional standard Web sites, and for this new flavour of application development. We’re trying to flesh out the product line to give people as many capabilities as possible.
Interactive Designer supports two deployment mechanisms. You can create a standard WinFX executable file, or you can create a version that runs within the browser environment. An XBAP only has what we call ‘partial trust’, whereas the complete installed application has full trust with full access to the file system.
Matt: What is the status of WPF/E, or WPF ‘Everywhere’?
Don’t forget that a big part of this story is that we’re bringing designers into the game. These applications will have the full functionality that they have today, but with designers involved in the creation of the application from the start because they will be able to use our Expression tools. As a result the applications will look better and function better, and bring a higher return on investment.
What we need to do is help the community establish what new working practices will be needed, because today designers do not take a full role in most application development environments. The tools are here and they’re starting to be used, but what doesn’t exist at the moment are the guidelines – the working practices and so forth. All that’s going to have to be worked out in the months and years ahead.
Matt: What about the current Windows Forms technology? What future is there for Windows Forms applications?
We don’t currently plan on producing any conversion tools that will allow you to take a Win32 application and press a button that turns it into a WinFX application. That said, I’m sure some clever third-party people will produce such tools. Our hope is that people will choose WinFX for their next application.
Matt: Do you see any likelihood of XAML, WPF or WPF/E becoming open standards, in the sense that you’ve done with .NET?
Furthermore they had the first version working in about six weeks. They came to a conference in Redmond in early 2005 and demonstrated it to us. Our engineers were stunned that they’d taken what wasn’t very well documented at that time and produced a complete working XAML exporter. Jaws were dropping!
So it’s very easy to work with and we are making it as easy as we can for people to produce exporters. Although we have produced the Expression tools for WinFX, they’re not going to be the only ones. There’s hopefully going to be a whole raft of tools that target XAML out there, and that’s exactly the kind of ecosystem we want to build up around WinFX.
Partially based on FrontPage technology (as is Expression Web Designer), SharePoint Designer 2007 is for designing sites that run on SharePoint Services or SharePoint Server 2007. With it users will be able to design SharePoint workflows and applications either by writing ASP.NET 2.0 code; or using built-in tools that allow you to construct conditional views and forms with validation, and to read and write data from a variety of data sources including XML files, Web Services and SQL databases, without having to write any code at all. Administrators will also be able to decide what capabilities are available to which users. A beta 2 version of SharePoint Designer 2007 is expected before July this year.
Click here for our Privacy Statement. Copyright © Matt Publishing. All rights reserved. No part of this site may be reproduced without the prior consent of the copyright holder.