Build Vista UIs to Code
- By Bill McCarthy
You should grab a copy of the "Windows Vista User Experience Guidelines" if you're designing any Vista apps. The guidelines are available as a preliminary draft and consist of a 763-page .PDF file that you can get it here
For .NET developers, some of the Vista features covered will be included in .NET 3.5, such as the new open and save dialog components. Other features are things you might wish to consider when you create any custom windows or interfaces. Some of the guidelines are particularly interesting reading, such as the sections on error messages and warning messages. Giving the user the only option of saying OK to an exception or problem is out, and instead you should use Close, not OK. Personally, I prefer OK as I read that as a simple acknowledgement of the message presented. When I first saw Close presented in a dialog like that, I thought it meant I was going to terminate the entire program. Continue would probably be a better term to use. You should look at these issues and discuss them with your team and clients. If you decide to do something different, make sure it is for the right reasons, because otherwise you'll probably end up confusing customers even more. And don't let the document size put you off: It's got a lot of visual examples that do a good job of illustrating the guideline's points.
If you're having trouble sleeping, I have some more reading that's bound to help you overcome that. The "Visual Basic Language Specification 9.0 (Beta 2)" is a technical document and reads as such. That said, there are some interesting parts in there, and it's handy to have it as a reference. Download it here.
The must-have tool this month is Microsoft FxCop 1.36 beta 2. FxCop lets you perform static analysis of your .NET assemblies to ensure they meet good coding guidelines.
The Visual Basic team has released the Microsoft Interop Forms Toolkit 2.0. The Interop Forms Toolkit provides templates and tools to add COM wrappers to your .NET forms and user controls so you can use them inside your Visual Basic 6 applications.
Speaking of gone but not forgotten languages, Service Pack 2 for Visual Fox Pro 9.0 is now available for download it here. Visual Fox Pro is now a discontinued product.
If you have Expression Design and you're working with Silverlight or plan to, you should install Service Pack 1 for Expression Design. It fixes some issues with the XAML produced for Silverlight--among other things. The Silverlight 1.0 SDK is also available here. Silverlight 1.0 does not include support for managed code, only Java Script.
Microsoft has announced its foray into the health-care industry with Microsoft HealthVault. HealthVault provides a central storage of clients' medical- and health-related records. Partners can write applications that use and add to this data store that is maintained by Microsoft, subject to legal agreement. To get started, download the HealthVault SDK. Samples are in C# only.
The Windows Live ID Client SDK provides an example of using managed code in a Windows Forms application and Windows Live ID sign-in. Again, samples are in C# only.
The WCF LOB Adapter SDK provides tools to help work with different storage and service back-ends via Windows Communication Foundation (WCF). Samples are in C# only.
To get a sneak peak of the ADO.NET Entity Data Model Designer download this video that was recorded at VSLive! Las Vegas. The video's only 8MB but conveys a lot of visual information about the mapping capabilities of the tools and runtime, including entity splitting and a mix of table-per-hierarchy and table-per-type mapping strategies.
Bill McCarthy is an independent consultant based in Australia and is one of the foremost .NET language experts specializing in Visual Basic. He has been a Microsoft MVP for VB for the last nine years and sat in on internal development reviews with the Visual Basic team for the last five years where he helped to steer the language’s future direction. These days he writes his thoughts about language direction on his blog at http://msmvps.com/bill.