Silverlight

Microsoft Silverlight (ex WPF/E)

Bug fix: WPF4 project template for #MVVMLight V3

Ironically, my last release of MVVM Light V3 was about fixing bugs in templates and making them better. In the process however, seems that I introduced a regression bug in the WPF4 project templates. Yep shit happens. How do I know if I have the bug? Check the Programs and Features control panel, and look for MVVM Light. If the “Version” column shows 3.0.2.19, you have the bug. If it shows anything higher, you don’t. For instance, the new version with the bug correction is 3.0.3.19. Also, any version...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

New MVVM Light templates with bug fixes

The current version of MVVM Light had a couple of issues in the project templates. The most annoying one was causing a problem when creating new projects: The GUIDs used to uniquely identify the project were in fact not re-generated properly every time, and we ended up with the same GUID in every new project. The symptoms are the following: If you side-load an MVVM Light application, and then side-load another one, you will see that the first one is overwritten. Note however that this is only an...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light installers and Nuget (including Silverlight 5) #mvvmlight

I just pushed two big updates to MVVM Light setup components. MSI installers with Silverlight 5 support The MSI installers are available on Codeplex. The current version supports Silverlight 3, Silverlight 4, Silverlight 5 (new), WPF 3.5 SP1, WPF 4, Windows Phone 7.0 and Windows Phone 7.1. The installer for V3 is available, as well as the one for V4 beta. NuGet support including Silverlight 5 I also pushed a new version of the NuGet packages which includes Silverlight 5. To install MVVM Light into...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light for Silverlight 5 is on Codeplex #mvvmlight

Here we go! After the Microsoft team released version 5 of Silverlight yesterday, MVVM Light is available for this version of the framework too. I did not create the installer yet (that will take a few more days), but you can download the source code and build it yourself easily. Source code on Codeplex. Instructions to build the code. With this latest release, this puts the number of supported frameworks to 8: .NET 3.5 SP1, .NET 4, Silverlight 3, Silverlight 4, Silverlight 5, Windows Phone 7.0,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 5 is released!

Microsoft just released the version 5 of Silverlight! It’s a great news and I really want to congratulate the whole team on this impressive collective effort. The official announcement is on the Silverlight team blog! The purpose of this article is not to be exhaustive about the list of features (there have been, and will be, many more very detailed articles such as this series on the Silverlight blog) but rather to explain why this version in particular makes me happy to be a Silverlight developer...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light template and WCF services (or any ASP.NET application for that matter)

I was recently made aware of a couple of people having issues with WCF services (or ASP.NET applications) when using the MVVM Light project template for Silverlight. There is a blog post and a StackOverflow question, so what exactly is happening there? Well in fact it is pretty simple when you know how Silverlight connects to web services. Due to the security model of Silverlight, the application cannot connect to a web site if it is not originating of this very website. In laymen’s terms, it means...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Breaking change: Raising PropertyChanged with string.Empty in WinRT / Windows 8

In the developer preview of Windows 8, I just noticed a breaking change in the way that data bindings react to the PropertyChanged event. First a bit of background: Often, objects that are databound to the UI are simple data objects (also called ViewModels) that implement the INotifyPropertyChanged interface. This interface is very simple and defines just one event, the PropertyChanged event, that needs to be raised by the ViewModel when one of its property changes. It is what makes the ViewModel...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Quick tip: Select the correct INotifyPropertyChanged in Windows 8 / WinRT

Microsoft loves MVVM and INotifyPropertyChanged so much that they included this very useful interface twice in the new WinRT framework. Unfortunately, only one of these is working correctly (and the other one is likely a bug, remnant from the past ) When implementing INotifyPropertyChanged, make sure that you select the correct one! The one you want to use is into Windows.UI.Xaml.Data. The old one, the one you DON’T WANT is into System.ComponentModel (the same namespace it was in WPF and Silverlight)....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

My thoughts about Build, Windows 8, WinRT, XAML and Silverlight

Last week, Microsoft held their long awaited Build Windows (or simply "Build") conference in Anaheim CA. About 5000 people packed the convention center to discover the latest version of the Windows operation system: Windows 8. This is a very major iteration (much more than the Windows Vista –> Windows 7 transition) (and also, it is an early preview so it is quite unfinished ;) As such, we will definitely need a bit more time to play with it before we can express a truly informed opinion. Of course...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light V4 beta1

This morning, I published MVVM Light V4 beta1 in the form of an MSI. The installation instructions are detailed on the MVVM Light installation page. Please make sure to uninstall previous versions before you install V4 beta1. There are quite a few changes in this version, and I plan to blog about various features in the coming days. As usual, stay tuned! Change log General changes Added XmlnsDefinitionAttribute for GalaSoft.MvvmLight.Command in Extras assembly. Setup Created an installer. Messenger...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM light V3 installer for non-English systems

After I released the MVVM Light installer, I got a note saying that parts of the installation failed on non-English systems (in that case a German installation of Expression Blend and Visual Studio). Specifically, what failed was the code snippets on Visual Studio, and the project and item templates in Expression Blend. After investigating, it is correct that these two particular features of MVVM Light were installed to language-coded folders. Correcting the issue for Expression Blend was easy enough...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Automated installer for MVVM Light V3!

For a very (too) long time, the installation procedure for MVVM Light sucked. It involved downloading and unzipping files in various locations. Unfortunately, creating an automated installer is not completely trivial because of the variety of files that are getting installed: Binaries, Code Snippets, Project and Item Templates, all require different locations, and all that for VS2008, VS2010, Blend 4 and Silverlight 3, Silverlight 4, WPF3.5 SP1, WPF4, WP7.0 and now WP7.1 “Mango”. Thankfully, MVVM...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Proposing a new RelayCommand snippet for MVVM Light V4

In MVVM Light V4, I am proposing a new RelayCommand snippet, making it easier to declare and initialize a RelayCommand. I came up with a syntax that allows having the RelayCommand and its initialization in one convenient location. I am looking for feedback, so leave your comments below!! RelayCommand This is the code created by the code snippet after expansion, for a simple RelayCommand. private RelayCommand _testCommand; /// <summary> /// Gets the TestCommand. /// </summary> public RelayCommand...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

“Mango” from the trenches part 2: Starting a Bing Maps navigation #wp7dev

At IdentityMine, we had the chance to develop a few applications featuring the new Windows Phone 7 features coming up in the update codenamed “Mango”. This series will showcase a few of the new features included in Mango that we used in those apps. Part 1: Adding a secondary live tile to the start page. Part 2: Starting a Bing Maps navigation Part 3: Updating a Live Tile locally (coming soon). Part 4: Adding your app to Bing Search Extras (coming soon). The feature Windows Phone 7 Mango features...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

“Mango” from the trenches part 1: Adding a new live tile to the start page #wp7dev

At IdentityMine, we had the chance to develop a few applications featuring the new Windows Phone 7 features coming up in the update codenamed “Mango”. This series will showcase a few of the new features included in Mango that we used in those apps. Part 1: Adding a new live tile to the start page. Part 2: Starting a Bing Maps navigation. Part 3: Updating a Live Tile locally (coming soon). Part 4: Adding your app to Bing Search Extras (coming soon). The feature One of the most recognizable features...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light Toolkit patch for WP7 Mango Beta

On Tuesday the 24th of May 2011, the new version of the Windows Phone 7 SDK codenamed “Mango” was released to the public in beta. This is a huge iteration with an extremely large number of new APIs. Most exciting, the version of the Silverlight framework now used in Windows Phone 7 is Silverlight 4. Thanks to this, I was able to recompile the MVVM Light Toolkit for Windows Phone 7 based on the Silverlight 4 version. This is interesting because the Silverlight 3 version had a few hacks I had to build...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Is your application powered by #mvvmlight?

A couple of days ago I had the wonderful surprise to find a mention (and a link!) to MVVM Light on USAToday.com. The article talks about the new USA Today app available for Windows Phone 7. MVVM Light is mentioned as well as JSON.NET just after the high quality of the development tools is mentioned: “That same high bar for tools extends into the community as well. MVVM Light and JSON.Net were extremely useful moving past mundane tasks and instead getting to the business of building our app.” – Tim...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light V3 on NuGet (now with WP7 support)

There was already a version of MVVM Light on Nuget before. However the old version did not support Windows Phone 7. This is now corrected. Also the new version now adds a ViewModelLocator to your project and includes it in App.xaml. What is NuGet? NuGet is a mechanism allowing to add packages (assemblies, source code…) to an existing project. All versions of MVVM Light are supported (WPF3.5, WPF4, Silverlight 3, Silverlight 4, Windows Phone 7). In order to install NuGet and learn more about this...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

My Swiss TechDays presentations sample code

I published the sample code from my presentations about Windows Phone 7 at TechDays Switzerland. I also published the Powerpoint slides on Slideshare (Windows Phone 7 Overview / Windows Phone 7 Deep Dive). One of the talks is available as a video on Channel 9. I expect the other one to be made available soon, stay tuned for an update. Windows Phone 7 Overview View more presentations from Laurent Bugnion Windows Phone 7 Deep Dive View more presentations from Laurent Bugnion Laurent Bugnion (GalaSoft)...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light V4 preview 3 (BL16, MIX11 edition!!) #mvvmlight

At MIX11, I am releasing a new preview of MVVM Light version 4. This new preview contains one small change and one large change. ObservableObject replaces NotifyPropertyChanged In the previous preview, I introduced a new class named NotifyPropertyChanged. However, I got a few suggestions to rename this class to ObservableObject, which is indeed a better name. In BL16, NotifyPropertyChanged was deleted and replaced by ObservableObject. Nothing else changes, just the name. ObservableObject is a very...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Deep Dive MVVM samples #mix11 #deepdivemvvm

Here is the sample code I demoed in my MIX11 session “Deep Dive MVVM”. Please download the Zip file, and then unblock it in Windows Explorer by right-clicking it, and then selecting Properties. If you see an “Unblock” button, please click it. You can then extract the content of the Zip file on your hard drive. The slides are also available for download. Last year’s session To fully understand this session, an understanding of what MVVM is should be available. I recommend the following links: “Understanding...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

My MVVM talk’s material is online (#uktechdays)

Quick announcement: I just had the extreme pleasure to talk at the UK TechDays online conference (organized over LiveMeeting) and had about 100 persons in the session, thanks to all for allowing me to talk to you about MVVM! I just pushed the whole sample code as well as the slides to a SkyDrive folder, so feel free to download and experiment. And don’t forget: A recording of session with similar material but with 30 minutes more time for additional samples is online for your viewing pleasure. Deep...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Building MVVM Light from Codeplex

I just published an article describing how to get the source code from Codeplex, build it, unit test it, get all the DLLs and install them to replace a previously installed version. It’s not very complicated, but it is good to have this information in one location. The article is available at http://www.galasoft.ch/mvvm... Happy coding! Laurent Laurent Bugnion (GalaSoft) Subscribe | Twitter | Facebook | Flickr | LinkedIn...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light V4 preview 2 (BL0015) #mvvmlight

Over the past few weeks, I have worked hard on a few new features for MVVM Light V4. Here is a second early preview (consider this pre-alpha if you wish). The features are unit-tested, but I am now looking for feedback and there might be bugs! Bug correction: Messenger.CleanupList is now thread safe This was an annoying bug that is now corrected: In some circumstances, an exception could be thrown when the Messenger’s recipients list was cleaned up (i.e. the “dead” instances were removed). The method...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

With WPF and Silverlight against cancer

MVPs are well known for their good heart (like the GeekGive initiative shows) and Client App Dev MVP Gregor Biswanger is no exception. At the latest MVP summit (beginning of March 2011), he took over a DVD about WPF 4 and Silverlight 4 and asked a few Microsoft superstars to sign it. Right now, the DVD is auctioned on eBay and of course the proceeds will go to a charitable work: The German League against Cancer (Deutsche Krebshilfe). The post is in German and English (scroll down for the English...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

DEEP DIVE MVVM at #MIX11

The public (you!) has spoken, and “Deep Dive MVVM” was selected (along with 11 other open call talks) out of 217 proposals. There were 17’000 votes! These are pretty amazing numbers, and believe me when I tell you that I still didn’t completely realize what just happened! I want to really underline the outstanding quality of many of the talks that were proposed. I decided not to reveal my votes, because I just know too many of the candidates and I had only 10 votes but let’s just say that some of...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light V4 preview (BL0014) release notes

I just pushed to Codeplex an update to the MVVM Light source code. This is an early preview containing some of the features that I want to release later under the version 4. If you find these features useful for your project, please download the source code and build the assemblies. I will appreciate greatly any issue report. This version is labeled “V4.0.0.0/BL0014”. The “BL” string is an old habit that we used in my days at Siemens Building Technologies, called a “base level”. Somehow I like this...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

My proposals for the #MIX11 open call

Vote for: “Deep Dive MVVM” Vote for: “Exploring a Blendable Windows Phone 7 Application” Last year, the MIX team started a new concept with an open call for sessions. People from the community were invited to submit talks about pretty much anything, and the public voted to select which sessions they wanted to see. It was a huge success, since 150 sessions were submitted, of which 13 sessions were picked (don’t hold me accountable for the numbers, they are plucked from my memory ) I was very honored...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#twitter for Windows Phone 7 protips (#wp7)

I started tweeting a list of “protips” (or whatever you want to call that) related to the Twitter for Windows Phone 7 application. Since I worked as integrator on this app, my tasks involved integrating design assets in all screens, and so I had an insider view on all the screens (and that is really a LOT of screens :) Seeing some comments about the app made me understand that most users out there don’t realize how rich the application is, and how many features are available. So without further ado,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight User Group of Switzerland (SLUGS)

Last Thursday, the Silverlight Firestarter event took place in Redmond, and was streamed live to a large audience worldwide (around 20’000 people). Approximately 30 if them were in Wallisellen near Zurich, in Microsoft Switzerland’s offices. This was not only a great occasion to learn more about the future of Silverlight and to see great demos, but also it was the very first meeting of the Silverlight User Group of Switzerland (SLUGS). Having 30 people for a first meeting was a great success, especially...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Watch the #Silverlight Firestarter event with us!

On December 2nd, Microsoft is having an exciting event in Redmond: The Silverlight Firestarter. This is a whole day dedicated to this amazing technology, something like an extension of PDC if you like. The program is an exciting overview covering most of the aspects of Silverlight application development, by some of the best experts in the field. (All times are Swiss time - 9 hours) Watch with us! In order to enjoy this event even more, the newly formed Silverlight User Group of Switzerland, in collaboration...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Back from TechEd Europe 2010 (Berlin) #tee10

I spent this week in Berlin in company of about 5000+ other geeks at Microsoft’s TechEd Europe. I had experienced the conference for a very short time last year as I spent just 2 days helping on the Silverlight booth at the Technical Learning Center. This year however I was invited to give two talks and participate in a panel of experts. Taking Advantage of Microsoft Expression Blend to Build Silverlight 4 Applications: This session went pretty well even though it was at 6PM on Tuesday. The room...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

My position on the #Silverlight debate

Latest update (and hopefully last update): Microsoft has published a few posts to clarify the debate. Please consider the following: PDC and Silverlight by Bob Muglia PDC Thoughts by Steve Ballmer *NEW* Silverlight Questions by Scott Guthrie Silverlight is dead. Long live Silverlight! by Tim Heuer Committed to Silverlight by John Papa ---------------------------... Disclaimer: I am a Silverlight MVP and book author, and as such I have an interest (some would say...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Microsoft Shape

Today I have been invited by Microsoft Switzerland to present three of our awesome Windows Phone 7 applications on stage at their yearly Shape conference. It was a great moment, and I felt super proud to show the IMDb app, the Twitter app and the SBB Mobile app. The response was excellent, I didn’t have one single demo effect, was able to stream a movie preview live from the IMDb app, to show most features of the Twitter app, to load a timetable and purchase a ticket from the SBB app, and all this...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Adding a ViewModelLocator and Merged Dictionaries to App.xaml

I guess this is one of these places where using Blend is an advantage… since I do these operations mostly with the help of the tool, the XAML is generated and I don’t need to think about it too much. There is a trick when you add objects (for example Styles or a ViewModelLocator) to App.xaml when it already has merged resource dictionaries. The syntax is a bit convoluted, so here we go: <Application.Resources> <ResourceDictionary> <ResourceDictionary.Merg... <ResourceDictionary...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light Hotfix for Windows Phone 7 developer tools RTM

This is a hotfix to correct the issues with the MVVM Light templates for Windows Phone 7. Who is it for? Use this hotfix if (and only if): You have MVVM Light Toolkit V3 SP1 installed. You are using the new developer tools for Windows Phone 7 (RTM). Why a hotfix? The hotifx is needed because of changes in the Microsoft Windows Phone 7 assemblies (regrouping of classes in different namespaces and/or different assemblies) as well as some other changes (manifest structure, etc). The MVVM Light assemblies...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

JavaScript vs Silverlight: An answer

An article was published at JupiterJS.com (titled “JavaScript vs Silverlight”) arguing that JavaScript is better than Silverlight. Unfortunately, there is no way to post comments on that page (weird, really) so I decided I would post my answer here. First let me state that I do not think that Silverlight is an opponent, nor a threat to JavaScript. I love both, I write both, and both are helping me to create better experiences. Also, Silverlight has grown to be much more than “just” a web plug-in....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

How to use the MultiTouch Behavior for Windows Phone 7

Yesterday, I published the source code of the MultiTouch Behavior for Windows Phone 7 on Codeplex (http://multitouch.codeplex... Meanwhile, Davide Zordan (the founder of this project) started to modify the Silverlight 4 version of the behavior to make it API compatible. Eventually, the goal is to share all the API signature, and as much code as possible. We would like to extend this to the WPF version as well, in order to have a consistent landscape of multitouch on all 3 platforms. Together with...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 4 Unleashed table of content

(book cover might change before publication) As I am reaching the end of the writing phase of Silverlight 4 Unleashed (to be published at Sams), I thought I would give a little more information about this book. The book’s idea Because I didn’t want to merely write an update to the existing Silverlight 2 Unleashed, I proposed a different approach to my editor: Using Silverlight 2 Unleashed (which was bringing people up to speed with Silverlight 2 pretty much from scratch) as the basis for the new...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Windows Phone 7 multitouch behavior: beta testers needed (#wp7dev)!

I finished implementing version 0.1/beta1 of a multitouch behavior for Windows Phone 7 and need beta testers. What is the Windows Phone 7 multitouch behavior? Multitouch in Windows Phone 7 is not super hard, but there are a few things that need to be taken in account (such as the orientation of the device). In addition, it is very easy to get unwanted effects on a small screen (for example that the element becomes too big/too small). Also, in some cases the proportionality should be kept for a scaled...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Two small issues with Windows Phone 7 ApplicationBar buttons (and workaround)

When you work with the ApplicationBar in Windows Phone 7, you notice very fast that it is not quite a component like the others. For example, the ApplicationBarIconButton element is not a dependency object, which causes issues because it is not possible to add attached properties to it. Here are two other issues I stumbled upon, and what workaround I used to make it work anyway. Code to demonstrate the issues and the workaround can be downloaded here! Finding a button by name returns null Since the...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Handling DataGrid.SelectedItems in an MVVM-friendly manner

An interesting question from one of the MVVM Light users today: Is there an MVVM-friendly way to get a DataGrid’s SelectedItems into the ViewModel? The issue there is as old as the DataGrid (that’s not very old but still): SelectedItem (singular) is a DependencyProperty and can be databound to a property in the ViewModel. SelectedItems (plural) is not a DependencyProperty. Thankfully the answer is very simple: Use EventToCommand to call a Command in the ViewModel, and pass the SelectedItems collection...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Be careful when installing the Blend Windows Phone 7 Add-In

There was a small issue today with the release of the Windows Phone Developer Tools CTP (April 2010 Refresh) refresh. The issue is that the Expression Blend Add-in Preview for Windows Phone (April Refresh) is not compatible with Blend 4.0.20408.0, which was the public RC (release candidate). A few days ago, the Blend team released a fix for an issue that was sometimes causing a crash when Blend was starting up. This new release (V4.0.20421.0) was not very well announced however, and many people (including...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Crowdsourcing MVVM Light Toolkit support

Considering the number of emails that are sent to me asking for support for MVVM Light toolkit, I find myself unable to answer all of them in sufficient time to make me feel good. In consequence, I started to send the following message in response to support queries, either per email or on the MVVM Light Codeplex discussion page. Hi, I am doing my best to answer all the questions as fast as possible. I receive a lot of them, however, and cannot reply to everyone fast enough to make me happy. Due...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Small change in MVVM Light Toolkit templates for Blend 4 RC

Ah, the joy of new releases… You will find that the MVVM Light Toolkit works fine with Visual Studio 2010 RTM and Blend 4 RC except for a few adjustments: Blend templates The path to the Expression Blend 4 project templates changed. If you start Expression Blend 4 RC now, you will likely not see the MVVM Light templates in the New Project dialog. New Project dialog with MVVM Light To restore the templates, follow the steps: Open Windows Explorer Navigate to C:\Users\[username]\Documen...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Using commands with ApplicationBarMenuItem and ApplicationBarButton in Windows Phone 7

Unfortunately, in the current version of the Windows Phone 7 Silverlight framework, it is not possible to attach any command on the ApplicationBarMenuItem and ApplicationBarButton controls. These two controls appear in the Application Bar, for example with the following markup: <phoneNavigation:PhoneAp... <shell:ApplicationBar x:Name="MainPageApplication... <shell:ApplicationBar.Me... <shell:ApplicationBarMen... Text="Add City" /> <shell:ApplicationBarMen...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light Toolkit V3 SP1 for Windows Phone 7

He he I start to sound like Microsoft… Anyway… I just released a service pack (SP1) for MVVM Light Toolkit V3. Why? Well mostly because I worked a bit more with the Windows Phone 7 tools that were released at MIX0, and I noticed a few things that could be better in the Windows Phone 7 template. Also, I only found out at MIX that you can actually install custom project templates for Visual Studio Express. For some reason I thought it was not possible. The best way to solve these issues is through...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Sample code and slides for my TechDays10 (Belgium) talks

The source code for my MVVM talk titled “Understanding the MVVM Pattern” given at TechDays 2010 in Antwerpen, Belgium, is available online. It is actually the same code than the MIX10 one, but I added the Windows Phone 7 MVVM Light application (available in the folder titled “Mix10.MvvmDemo2-End”. Note: before unpacking the zip file, you should right click on it, and select properties / Unblock. I also published the slides for my two talks: Understanding the MVVM Pattern A day in the life of a WPF/SL...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Multithreading in Windows Phone 7 emulator: A bug

Multithreading is supported in Windows Phone 7 Silverlight applications, however the emulator has a bug (which I discovered and was confirmed to me by the dev lead of the emulator team): If you attempt to start a background thread in the MainPage constructor, the thread never starts. The reason is a problem with the emulator UI thread which doesn’t leave any time to the background thread to start. Thankfully there is a workaround (see code below). Also, the bug should be corrected in a future release,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Sample code for my #mix10 talk online

Update: Seems that not everyone is running on the latest and greatest, which is understandable. To avoid confusion, I added the version of the framework for which these samples are available. In the next few days, I will try to port them to other versions in order to have working samples in WPF3.5, WPF4, SL3 and SL4. Please be patient, thanks! Update 2: I reconfigured the samples to include all the external assemblies you need to run them (including Microsoft.Practices.Unity.dll, System.Windows.Interactivity...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

What’s new in MVVM Light V3

V3 of the MVVM Light Toolkit was released during MIX10, after quite a long alpha stage. This post lists the new features in MVVM Light V3. Compatibility MVVM Light Toolkit V3 can be installed for the following tools and framework versions: Visual Studio 2008 SP1, Expression Blend 3 Windows Presentation Foundation 3.5 SP1 Silverlight 3 Visual Studio 2010 RC, Expression Blend 4 beta Windows Presentation Foundation 3.5 SP1 Windows Presentation Foundation 4 RC Silverlight 3 Silverlight 4 RC For more...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light V3 released at #MIX10

During my session “Understanding the MVVM pattern” at MIX10 in Vegas, I showed some components of the MVVM Light toolkit V3, which gave me the occasion to announce the release of version 3. This version has been in alpha stage for a while, and has been tested by many users. it is very stable, and ready for a release. So here we go! What’s new What’s new in MVVM Light Toolkit V3 is the topic of the next post. Cleaning up I would recommend cleaning up older versions before installing V3. I prepared...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

My program at #MIX10

Getting ready to fly to Vegas and MIX10 is really an exciting time! It is also a very busy time, because we are working on a few projects that will be shown on stage, I have my presentation to prepare, and of course as always the book… though these days it has been a bit on the back burner to be honest ;) I arrive in Vegas on Sunday evening around 10PM, so I won’t be able to make it to the traditional IdentityMine dinner this year. I am sure it will be fun nonetheless! My session: Understanding the...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Schedule for my session at MIX10

Microsoft has published the schedule for the MIX10 sessions. I have a sweet spot, and I dearly hope that it stays this way (Last year I had a great spot, but it was changed last minute and then I had a much better one, “competing” against Vertigo and their Playboy app… yeah try to explain to a bunch of geeks that MVVM is better than Playboy… good luck with that ;) Anyway, this year my sweet spot is on the very first day of the conference (there are workshops on Sunday, but this qualifies as pre-conference),...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight MVP of the year

Here is a quick news from the MVP summit in Redmond. Things here are amazing, with a lot of good news (that will be made public at MIX, so in the mean time I cannot say anything more about it, except that it is awesome). The summit is, amongst other things, an amazing way to connect with other MVPs and with the product group. This is an amazing community to be a part of, full of really smart people. In that sense, it was a pretty big surprise for me when I got an email announcing me that I had been...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Quick tip: Commenting out properties in XAML

Often when you write XAML, you wish you could ignore a property temporarily. In code, it is easy to do: Just comment out the line where the property is set, and you are good to compile. LayoutRoot.Background = new SolidColorBrush(Colors.Red); //LayoutRoot.DummyProperty = "Ignored"; /* LayoutRoot.Another = "Ignored too"; */ In XAML it is not so easy, because XML (of which XAML is a dialect) does not have line comments, but only block comments. You can comment out a whole XAML element, but not just...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

The MVVM landscape at MIX10

Update: Shawn Wildermuth has changed his session and will be talking about Silverlight Security instead. The MIX conference this year had an open call for sessions, and 12 sessions were voted by the public out of 169. Surprisingly (or maybe not that surprisingly in fact), 3 sessions out of the 12 have the MVVM pattern in their title. This shows a lot of interest for this pattern which is helping the developer to create decoupled, testable, blendable applications in Silverlight and in WPF. Since my...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Avoiding issues when typing text in Bindings

The Binding class has a few properties that can be set to a text, including spaces. The properties StringFormat, TargetNullValue and FallbackValue are such properties. These properties exist in WPF and newly also in Silverlight 4. For example, you can type: Since these strings are typed within the Binding markup extension in XAML, they do not take quote signs, which leads the XAML editor to be a little confused, as the color coding shows: The text after the “This” turns to red in the figure above....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Talking in Las Vegas: MIX2010 and MVVM

Update: The session is officially on. See the MIX10 website. This morning, very early (or very late depending how you see it), I learned that one of the sessions I submitted to the MIX 2010 open call for speakers had been picked by the public. Out of 169 sessions, only 12 were picked, so you imagine my feelings right now. Honestly, I am sure that this will be a good session, but it could have gone either way, and I had prepared myself mentally for the alternative possibility too. Understanding the...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Quick tip: Finding Silverlight 4 documentation fast

The Silverlight 4 documentation is available online from Microsoft. However, it is not the fastest way to find documentation. Instead, you should know that the Silverlight 4 documentation is available online, it is just a little bit hidden. “Also available for…” When you navigate to an MSDN page, you will find a box letting you know that the page you are looking for is also available for Silverlight 3, .NET 3.0, .NET 3.5 or .NET 4. For example, here is what the page for System.Windows.Controls.Border...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX 2010: Voting for sessions has begun (I got two)

This year Microsoft decided to have an open call for sessions for the MIX 2010 in Las Vegas. This conference, in case you don’t know it yet, is a great 3 days about modern client technologies, such as ASP.NET, Windows Presentation Foundation and of course Silverlight. This year, MIX is taking place from the 15th to the 17th of March 2010 in the Mandalay Bay hotel in Vegas. Today, the voting began! I didn’t count them, but there seems to be more than 100 sessions lined up, and the competition is fierce:...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 4: Drag&drop with EventToCommand

One of the MVVM Light Toolkit’s user requested that I add the possibility to pass the EventArgs of an event to the ICommand that it is bound to through the EventToCommand trigger. At first I was a bit reluctant because it seems like a transgression of the rule that says you should avoid to have too much knowledge about the UI layer in the ViewModel. For example, if you have a RelayCommand in the ViewModel that expects a MouseEventArgs, it kinds of binds you to a certain kind of UI element, which...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light V3/alpha3 for Blend 3 and Blend Preview 4

The project and item templates allowing you to create pre-wired MVVM Light applications are now also available for Expression Blend 3 and Expression Blend Preview for .NET 4 and Silverlight 4. The installation process is manual, but not difficult at all (unzipping a few files to predefined paths). I did document the installation process here. Of course the templates are also available for Visual Studio 2008 and Visual Studio 2010, as well as the binaries. The source code is available on Codeplex....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light Toolkit V3 Alpha 3 for WPF4/SL4

Update: The templates are also available for Expression Blend 3 and Expression Blend Preview for .NET 4 and Silverlight 4. I just published the latest alpha version of the MVVM Light Toolkit. I will post more about the new features in this alpha version, but the most exciting is probably that with this release, the MVVM Light Toolkit works in Windows Presentation Foundation 4 and in Silverlight 4 (in Visual Studio 2010). There is no automatic installer for this version yet, but I wrote a page describing...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

My talk at #notatpdc postponed

Hey guys, I am really sorry for having to postpone my talk about Expression Blend 3 and SketchFlow. We had some huge difficulties with the NotAtPDC.com website, and unfortunately we were not able to locate the site administrator on time to solve the issue. Without a speaker login, I was able to talk to the attendees, but not share my desktop. Now I love to talk about Blend but I love even more to show Blend ;) Ironically, as a Microsoft MVP I do have a LiveMeeting account, so I would be able to host...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 4 beta released at #PDC09

Well people, it was an amazing keynote. Silverlight 4 beta was just presented by Scott Guthrie at the Professional Developer Conference 2009 in Los Angeles. As soon as Silverlight 3 was released a few months ago, the Silverlight team started working on new features to create what will be a really exciting release. As of now, the Silverlight 4 beta bits and all the necessary tools are available for download. Probably the best place to start is Tim Heuer (Silverlight evangelist for Microsoft) who has...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Talking at #notatpdc about Blend 3 and SketchFlow

NotAtPDC is an awesome initiative from within the .NET community that allows people who cannot for any reason attend one of the major conferences (such as PDC, MIX etc…) to share knowledge, have fun, interact and generally have all kind of good times without leaving their home or office. This year, I cannot make it to the Professional Developer Conference because of multiple reasons (too much work, too many travels ;)) but I will talk to the NotAtPDC conference 2009! My talk is titled Expression...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Bug correction in Messenger and new feature in EventToCommand (MVVM Light Toolkit V3 alpha)

Update (11/14/2009): The sample application is available as a zip file, and I also published the Silverlight version to be executed directly in your browser. The advantage of pushing very early software to the advanced users is that bugs are detected before too many people suffer from them, and features requests can be placed and implemented without pain. This is exactly what happened with the MVVM Light Toolkit V3 alpha 2. Bug correction This applies to the new “send with token” feature of the Messenger....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light Toolkit Logo by P. Schutz

I met Philippe Schutz at the TechDays in Geneva early this year, and have been following him on Facebook since then. He does amazing work with logos and icons, and it is only natural that I have thought of him when I decided to get a new logo and icons for the MVVM Light Toolkit. A brand identity is quite important to me even in private projects. This is why I created the site GalaSoft (www.galasoft.ch) years ago, and started using this “brand” consistently as well as the cat logo (more about that...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light Toolkit V3 Alpha 2: EventToCommand behavior

Update (11/14/2009): I updated EventToCommand with a new feature: You can now pass the EventArgs of the fired event to the invoked command. See this post for more explanations. Here is another early release of the MVVM Light Toolkit V3 (Alpha 2). I decided to release gradually and early as soon as a new part of this new version is ready, to allow advanced users to install, test and give feedback about the new features. If you haven’t seen it yet, the features available in V3 Alpha 1 are described...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light Toolkit V3 Alpha 1

This is a super early release of the next version of the MVVM Light Toolkit. Please enjoy with care, be aware that this version is not fully tested and not feature complete by a long shot. The binaries are available for download. In addition, the source code for V3 alpha is up to date in Codeplex, so you can get the code from there. What’s new in the Messenger? So far the changes are: Bug correction: A “collection was modified” error could occur if a recipient was registering for a message type in...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Microsoft #shape conference

The Shape conference is a new web technologies oriented conference organized by Microsoft Switzerland. It is held in Zurich Oerlikon, and has two tracks, one design-oriented and one development-oriented. Best of Swiss Silverlight award The Best of Swiss Silverlight awards are rewarding the best Silverlight applications developed in Switzerland this year. The winners are: 3rd place: Siemens with an application to optimize energy efficiency in buildings. Very happy about that, because I have been a...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Clean shutdown in Silverlight and WPF applications

Update: There was a small error in the Silverlight version of the application. The code used to navigate to a different webpage was wrong (in ApplicationExtensions.cs). I wrote this article in the Austrian mountains and did not have the web to check the code, sorry about that ;) I updated the source code. If you downloaded the source code before the 19th of October, 8AM GMT, you want to load the correct version. Apologies!! It is often difficult for large applications with multiple, loosely coupled...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light Toolkit on Codeplex

Responding to a few requests from MVVM Light Toolkit users, I opened a project on Codeplex and published the installer as well as the source code there. http://mvvmlight.codeplex.com/ Formally, nothing much changes, my site and my blog remain the main location to find information on the toolkit. Being on Codeplex gives the project more visibility, and provides a convenient place for discussions too. Happy coding! Laurent Bugnion (GalaSoft) Subscribe | Twitter | Facebook| Flickr | LinkedIn...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light Toolkit V2: What’s new?

I am happy and proud to announce that the MVVM Light Toolkit V2 has been published! Shortcut: Jump directly to the installation instructions. Excerpt from the Get Started page: The main purpose of the toolkit is to accelerate the creation and development of MVVM applications in WPF and Silverlight. Like other MVVM implementations, the toolkit helps you to separate your View from your Model which creates applications that are cleaner and easier to maintain and extend. It also creates testable applications...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light Toolkit Messenger V2

Update: MVVM Light Toolkit V2 has been released. Please use the new installer to upgrade your installation. Ever since I released V1.1 of the MVVM Light Toolkit, I have received wonderful and constructive feedback from users. Most of it is flowing into V2, which is almost ready (I am still fighting a little with MSI installers and project/item templates for one feature I am particularly happy about, which is making project templates and item templates available in Expression Blend. That’s right,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Using RelayCommands in Silverlight 3 and WPF

Like most of us have found out the hard way, Silverlight 3 and Windows Presentation Foundation 3.5 are two quite similar beasts, but not totally the same. Silverlight is often presented as a subset of WPF (in fact, some features are available in Silverlight but not yet in WPF; generally speaking, though, it is true that Silverlight has less features than its big sister WPF) (yeah WPF is a girl, don’t tell me you didn’t know ;)) No Commands in Silverlight 3 One of the missing parts is Commanding....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

New articles about the MVVM Light Toolkit V1.1.1

To help you get started with the MVVM Light Toolkit V1.1.1, I published two new articles: Creating a new MVVM Light application in Visual Studio This article will show you how to use Visual Studio to create a brand new MVVM Light application in Windows Presentation Foundation and in Silverlight. Understanding the MVVM Light application sample When you create a new MVVM Light application, the application can be run and serves as a sample. This post helps you to understand the various components and...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM Light Toolkit V1.1.1: What’s new?

The new version of the MVVM Light Toolkit was just posted. So what is new? Well, to be honest not much. The biggest change is the new installer. It is now a standalone MSI installer, because some of you reported some issues with the previous ClickOnce based setup. I personally liked the ClickOnce setup (and I got a few good comments about it), but of course a standalone, offline installer is more versatile, so be it :) The following shortcuts are created in Start / All programs / Laurent Bugnion...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Installing the MVVM Light Toolkit

I just published a new version of the MVVM Light Toolkit. For more information about the toolkit in general, please refer to the Get Started page on my website. Also, more blog posts will follow soon and help you get started with the MVVM Light Toolkit, and also help you understanding how you can use it to solve various issues related to the development of View Model based applications in Windows Presentation Foundation and in Silverlight. The installation procedure is explained in details on my...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Detecting design time mode in WPF and Silverlight

We already talked often about providing design time data to your designers in Windows Presentation Foundation and in Silverlight, thus enabling them to work visually in design editors such as Expression Blend or the Visual Studio designer (codenamed Cider). The goal here is very simple: Designers should see something on their design surface. This sounds simple, but it can get quite tricky. Since Blend and Cider run (parts of) your application’s code to render the WPF or Silverlight elements, you...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

56 vector arrows in XAML

I found this collection of vector arrows through Robby Ingebretsen. The designer Sander Baumann created 56 different arrows in vector format (Adobe Illustrator). I converted these arrows in XAML. The arrows are available in the different formats (right click and choose “Save Target As”): DrawingBrush (WPF only): You can use the arrow icon as a brush to “paint” an element, typically a Rectangle. If the painted element is resized, the DrawingBrush will also resize seamlessly thanks to its vector nature....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Polymorphic Podcast: MVVM, Blend, Integrator in WPF and Silverlight

Some time ago, Craig Shoemaker asked me if I wanted to talk about design time data in MVVM on his Polymorphic podcast, and of course I said yes. Following in the steps on my buddies Josh Smith and Tim Heuer was a bit scary, but hey, this is what we do, right, following the steps of giants and trying not to look too silly while we do it :) It was a fun talk, and I think we managed to convey the message pretty well. We talked about the Model-View-ViewModel pattern, especially related to creation of...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Expression Blend Samples InvokeDataCommand bug

My good friend and super hero programmer Pete Blois posted an impressive collection of samples using and extending Expression Blend behaviors and triggers on Codeplex some time ago. There are a few real treasures in there, and some of them that I would like to integrate in my MVVM Light toolkit, thus avoiding to reinvent the wheel. I am still checking the license (the Samples use the MS-PL license) but I think it should work just fine. One feature in particular that I find super helpful is InvokeDataCommand....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Member of the INETA Europe Speaker Bureau

I am very proud and happy to announce that I am now a member of the European INETA speakers bureau. For those who don’t know it, INETA is an non-profit organization dedicated to “support all user groups interested in Microsoft .NET platform. (from http://europe.ineta.org/) One of the aspects of this support is the speakers bureau, which gathers experts in various .NET related fields. Right now there are 39 speakers available for talks for your user group. As a user group responsible, you can request...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 3, Blend 3 and the MVVM Light Toolkit

The big news today is of course the launch of Silverlight 3. Microsoft organized a big event in San Francisco (I was invited, but could not make it to SF in time, unfortunately :() and there was a big celebration. Together with Silverlight 3 RTM, we were given Expression Blend 3 Release Candidate (including SketchFlow). This is not the final version, but it is as close as it is ever going to be before it is officially released. This version should be feature complete, so there is already a lot to...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Installing the MVVM Light Toolkit V1.1.0.0 (obsolete)

Update: This post is obsolete, and has been replaced by a newer article. Please refer to the Get Started page for details
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM light toolkit (Silverlight edition) posted

To make development of WPF and Silverlight applications according to the Model-View-ViewModel pattern easier, I have put together a small toolkit which should speed up the creation of such applications by automating certain tasks. The toolkit must be installed manually for now. My next task is to prepare an installer, which should allow installing everything automatically, and also checking for upgrades, upgrading automatically and uninstalling the toolkit. For now however, a little manual work must...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVVM light toolkit for WPF and Silverlight

To make development of WPF and Silverlight applications according to the Model-View-ViewModel pattern easier, I have put together a small toolkit which should speed up the creation of such applications by automating certain tasks. Update: An automated Setup for the WPF and Silverlight MVVM Light Toolkit is available. Please use the automated Setup from now on. If you are unable to use the automated setup for any reason, please contact me at laurent@galasoft.ch. More information about the Setup and...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Working on a MVVM “light” toolkit

As some of you now, I have been spending most of my free time (which is not much these days once I am done with the amazing projects I am working on at IdentityMine, and the time spent with the family) working on a very simple, very light MVVM toolkit. This toolkit will encompass A DLL with classes that make MVVM applications easier to create and “wire”. A “base” ViewModel class that contains utility methods that ViewModels typically need. A command class that can be used in WPF and Silverlight,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Switching expertise: From Client App Dev to Silverlight

At the last MVP summit in March, some of us were informed that a new MVP expertise had been created for Silverlight. They asked a small number of existing MVPs with strong Silverlight competency (including yours truly) if they would agree to switch to that new expertise. I must admit that I have not always been very happy with the thought of a new expertise dedicated only to Silverlight. In my opinion, it is very important to keep Silverlight close to Windows Presentation Foundation, and to make...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Solving cross domain access problems (via Jon Galloway)

At my MIX09 and TechDays Belgium talk recently, I mentioned the issues that a Silverlight developer faces when trying to access a cross-domain web site. If the site has a clientaccesspolicy.xml (or crossdomain.xml) policy file in place, the call is allowed. If not, the call is rejected. The solution, I mentioned, is to put a "gateway" in place to forward the call to the cross domain site. In my talk, I said that you could do that on your own web server, the server the Silverlight application is served...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Posting the source code for my #mix09 and #techdays (Belgium) talk

Note: I just updated the title for this article, sorry to all of you who were waiting for the TechDays Belgium source code and didn't realize it was here :) I just posted the source code of the demo applications I used in my MIX09 talk "Working across the client continuum". The source code is structured as follows: DotNetContinuum: This solution contains the following projects: DotNetContinuum: a WCF service configured with 2 endpoints (SOAP and JSON), as well as 3 client applications: DotNetContinuum.Mvc:...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

My #MIX09 session is available in video

MIX09 is over, people are slowly going back home. I will be flying home tomorrow, quite a long trip since I will reach Zurich only on Sunday morning. I had the great pleasure to see that the video of my talk was posted online! This is great, because I didn't have a huge crowd (what do you expect when you "compete" against and Vertigo and their Playboy talk, and the amazing Corrina Black :)) But it's OK, because the people at my talk were really great. I felt wonderful during the talk, and even the...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#MIX09 Book Signing: "Silverlight 2 Unleashed"

When: Today, Friday 20th of March 2009, 10:30 - 11:00 Where: MIX2009 Book store (in 3rd Place) What: I will be signing my book there. Come and bring your friends
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Reminder: My talk at #MIX09

Tomorrow Thursday 19th of March 2009 Location: Delfino 4105 Working across the .NET continuum Come see how to build a continuum of client applications including HTML, AJAX, ASP.NET, Microsoft Silverlight, and Windows Presentation Foundation (WPF) that all consume the same Windows Communication Foundation (WCF) service. Learn how to reuse as much code as possible, how to optimize the development process, and how to address key logistical issues like external servers and cross domain communication....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

TechDays Belgium is over

I just held two talks in Antwerp, Belgium, for TechDays and it was really nice. First the Belgian team did a fantastic work welcoming the speakers, and as far as I could say, the attendees were also taken care of in an exemplary way. We had just a small incident (there was a power breakdown about 15 minutes before my show and the whole center went black), but noone panicked and it was taken care of with a lot of care. We started the sessions only 15 minutes late on the last day. Everyone stayed calm....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Back from MVP summit and heading to Tech Days Belgium

I am just back from the MVP summit in Seattle / Redmond and I had a great time there. It was fantastic catching up with old friends and making new ones. Seeing what is coming up in future releases of Silverlight and WPF (to name just those two) was electrifying. Of course I cannot talk about it because otherwise Justin Angel and the NDA police will track me down and kick my ass. If you never met Justin before, trust me, you don't want that to happen. :) Some changes for me after the MVP summit: I...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Talking at MIX09: Las Vegas and the continuum

One of my dreams is going to come true: Since the very first time I attended MIX in 2006, I have wanted to talk there. MIX has a very special meaning for me. It is in the Venetian conference rooms that I heard about Windows Presentation Foundation and what would later become Silverlight. It is there that me and my two colleagues Andreas and James decided that we wanted WPF for the project we had just started at Siemens. A decision that was definitely the right one, from a technical point of view...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX10K contest: The choice is made

As I blogged before, I was one of five judges chosen to decide which of the 105 (!) entries in the MIX10K contest were the best... it was a hard, terrible choice, but now the results are public! As a reminder: The contest is organized by Microsoft at the occasion of the MIX conference that will take place in March in Las Vegas. The goal was to create a Silverlight or WPF application with only 10 kilobytes of code (about 10'000 characters of text, including spaces, carriage return, etc...) First I...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Simulating IsSynchronizedWithCurrentItem in Silverlight (part 2)

This is part 2 of a two posts series about the property IsSynchronizedWithCurrentItem. In the previous post, we saw what it does in Windows Presentation Foundation. In this post, we will see that this property is missing in Silverlight, and propose a way to simulate it. Like we mentioned in the previous post, the property IsSynchronizedWithCurrentItem is very handy to keep a List-Details view in synchronization. However, this handy property is not implemented in Silverlight 2. When the team at Microsoft...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Simulating IsSynchronizedWithCurrentItem in Silverlight (part 1)

This is part 1 of a two posts series about the property IsSynchronizedWithCurrentItem. In this post, we will see what it does in Windows Presentation Foundation. In the next post, we will see that this property is missing in Silverlight, and propose a way to simulate it. One of the features I really like in Windows Presentation Foundation is the ability to set a flag on various list controls (such as ListBox, ComboBox, etc...) deriving from the Selector class. This flag is named IsSynchronizedWithCurrentItem....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Judging the MIX10K contest

In a previous post, I was mentioning that I took part to the MIX09 10K contest. Take a moment to read all about this contest and come back to finish this post :) Done? Great. Making this entry was a lot of fun, and I think it is really good and got a real chance to win. This is why I needed a little time thinking before I accepted the offer that was made to me to become a judge on the MIX 10K contest. Of course, when you think about it, it's an offer you cannot refuse, so I accepted it and am really...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Nice plug: Silverlight 2 Unleashed (and my girls) in TCS weekly

Thanks Adam for making my day (and my daughters') by including them in The Continuum Show weekly edition. It was so cool (and unexpected) :) (mention starts at 0:57 in the show) http://channel9.msdn.com/sh... And my good friend and colleague Kurt's daughter was also featured! Great day for IdentityMine's families :) KaXaml love All this is thanks to Robbie Ingebretsen and his amazing KaXaml editor. I can never underline enough how amazing KaXaml is. It's grown to become an...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Speaking at Microsoft TechDays - Belgium and Switzerland

Update: Added a talk in Geneva, Switzerland, 1st or 2nd of April 2009 I am happy to announce that I will be speaking at Microsoft TechDays in Antwerp (Belgium, 11th and 12th of March) and in Bern (Switzerland, 9th of March). Hope to see some of you there, and if you are around, please come and meet me!! 11th and 12th of March, Antwerp (Belgium) http://www.techdays.be/ .NET continuum: ASP.NET, AJAX, Silverlight and WPF This session will be given in English. With the release of Silverlight in 2008,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

New Year's Greetings and Silverlight Greeting Card

Happy New Year to all. 2008 has been an amazing year, with many changes in my professional life (joining IdentityMine, publishing my first book Silverlight 2 Unleashed, etc...). It was a real pleasure to be in company of some of the brightest minds on this planet and to do my best to not seem to ridiculous next to them :) Privately, the highlight of this year has been our trip to Asia (Malaysia, Hong Kong) which will remain in our minds forever. To celebrate the year ending today, I published a Silverlight...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Microsoft Expression Studio available at 50%

Just heard through Chris Koenig that Microsoft Expression Studio is available for a limited time at 50% of the original price. This suite is a must-have for anyone doing serious design work with Microsoft platforms such as Windows Presentation Foundation, Silverlight or even ASP.NET. In addition you get great tool such as Expression Encoder, which can encode videos for multiple platform (including the Zune) and even (with the Silverlight Streaming Publishing Plug-In) directly to your Silverlight...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight on Windows Update (Windows 7)

Still busy setting up my Windows 7 partition. Just noticed that Silverlight was pushed to it through Windows Update. Cool
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

It's podcast season: Herding code

Apparently it's podcast season... When in Los Angeles, Jon Galloway and I managed to sit down an hour and talk about Silverlight, WPF, Blend, my past work at Siemens and my future work at IdentityMine, and of course about my book Silverlight 2 Unleashed. I was kind of sad that Kevin Dente and Scott Koon didn't manage to join us, but the conference was so packed with events that we found time only on the very last day (Thursday) and the two had to go back home already. Still, it was nice to meet the...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Podcast about RIA and especially Silverlight

Very cool! A podcast I made with Josh Holmes and Mike Labriola a little before PDC is up now on the RIA wireside chat site. During 20 minutes, Mike (an Adobe expert), Josh (a Silverlight evangelist) and I chat about RIAs in general and Silverlight in particular. It was good fun and a very interesting talk. Hope you enjoy it...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#PDC08 talk: .NET 4.0 Declarative programming using XAML

3 XAML vocabularies: UI, Workflow, XPS. Used in mutliple runtimes: .NET 3,0, 3.5, Silverlight 1 and 2. Many tools too (Visual Studio, Expression Blend). XAML Specds were published earlier this week, 600 page volume schema for all variations of the language. Lots of file converters exist, from SVG, Flash, Illustrator, WMF, etc etc etc. The list is impressive! Next version will be extended to support more XAML-only code. For example, support for generics. Investments will be done to catch XAML errors...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Book signing: Silverlight 2 Unleashed at #PDC08

I will be doing an additional book signing today. I'll be signing Silverlight 2 Unleashed at the IdentityMine booth (in the expo area) today from 1PM. We are not allowed to sell anything on the floor (even my editor Sams is not allowed either because of MSFT regulations), so if you want me to sign it, stop by at the PDC bookshop today, just next to the registration area. I'll be happy to sign and to chat about the future of Silverlight! Hope to see you this afternoon
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

New Silverlight controls suite delivered by Microsoft #PDC08

A few minutes ago, Microsoft released a brand new suite of controls for Silverlight. The list is impressive! From now on, you can download these controls, the documentation and samples, and start coding! This post will give you a first insight into these controls based on a preview version of the set. This should make you want to experiment more and to discover more by yourself! One interesting thing that the team mentioned is that the controls which don't exist in WPF yet (for example Chart) will...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#PDC08 keynote (day 2, part 3)

Note: The Wireless network at the keynote failed miserably, so this will be posted with a delay. Scott Guthrie about tools and app development New APIs for multitouch and other Windows 7 API. Note: Lots of attention put in Win32 development with C++. Mentions improvements made to .NET 3.5 SP1, such as shaders, performance etc... .NET 3.5 SP1 built in Windows 7. This week, a new WPF Ribbon control will be shipped. Scott demos how to integrate it and skin it. Nice demo of photo album application. Demos...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#PDC08 Talk: Microsoft Silverlight, WPF and the Microsoft .NET Framework: Sharing Skills and Code

High level goals: building rich apps with same people, same skills, same workflow and common code. Shows how to decide when to use Silverlight and when WPF. Moving from Silverlight to full .NET is easier than the contrary. From Full .NET to SL: You need to "unlearn" many APIs. Shared knowledge, but porting code is not easy- Ian codes an application in WPF then copy/pastes to WPF, UI works pretty much the same way, same controls. Uses WebClient to make a request to Twitter. WebClient class is very...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#PDC08 keynote (day 1, part 2)

Note: The Wireless network at the keynote failed miserably, so this will be posted with a delay. Next speaker talks about customer challenges: Stay up to date, lower predictable costs including IT resources, High security and availability. That's why software should be distributed as services "Microsoft Online Services". It is just a beginning, and in the future all of the enterprise software will be optionally distributed as an online service. List of customers already use this, such as Coca Cola,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#PDC08 keynote (day 1, part 1)

Note: The Wireless network at the keynote failed miserably, so this will be posted with a delay. Ray Ozzie talks about the future of software and Microsoft's take on new software foundations. Mobile platforms increasling important. New software and activation codes for new services will be made available. Talks about "the cloud" and the critics he read online in the past weeks. Virtualization is more and more important (and is coming back after it was already popular long time ago). Externalization...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

My schedule at #PDC08

Difficult task: Choosing the sessions I am interested in for PDC08... Difficult because there are really many session that are very attractive to me, and also because I need to include side activities and meetings with members of the WPF and Silverlight community. I still have a few conflicts, and I will decide at the last minute which session to follow. Note that as usual with Microsoft conferences, all the sessions will be filmed and put online rapidly after the conference, so this is how I will...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 2 Unleashed in Stock at Amazon.com

Things are going really fast in the moment. My book just hit Amazon.com, and it went from "pre-order" to "in stock" a few minutes ago. I really can't wait to get reader feedback...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 2 Unleashed Online Content

There is a lot of online content available for Silverlight 2 Unleashed! Errata One thing that I am particularly sensitive to is the correctness of the information I put in the book. Because of time constraints, some *very* last minute changes by Microsoft didn't make it to the book. Other minor errors managed to slip through multiple review rounds (and believe me, many people did review this book with utter care and attention). I listed the Errata (a dozen so far) on my site, and the list will also...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 2 Unleashed hard copy - Two thumbs up!

Apparently I received my first hard copy of Silverlight 2 Unleashed at home! Because I am in the office, I can't see it yet, but according to my daughters, it's two thumbs up
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Imagine, Silverlight 2...

Imagine if you could have taken part to the development of the first version of Adobe Flash, and helped to make it a better product. Imagine that for the Mosaic web browser. Or the development of HTML and the web... Imagine if you could have been part of an adventure that will change how people see and use the Internet This is how I feel today. Silverlight 2 will being released during the course of Tuesday, the 14th of October. Given the time difference, it's possible that we Europeans only get it...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Various pieces of news

Now that the book is finished writing, reality is catching up with me and I am finally able to work on the backlog of ideas and projects that has accumulated in the last months. Time to give an update of stuff I do or will do soon. Silverlight 2 Unleashed status On my side, the work is done and I delivered my copy to the editor. We had a small bunch of last minute corrections when Silverlight 2 RC0 made it to the web, and I am happy the good people at Sams gave me some time to clean up a few kinks....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 2 Release Candidate 0 *for developers only*

So many people blogged about it already (time difference, and fun dinner last night, so I am late :) that I prefer to just point the reader to the best possible source of information: Scott Guthrie's blog. It cannot be stressed enough that this release is for developers only. It might very well be the last release before the final is made available, so it's a chance for people with Silverlight content to update their code. The public runtime will not be updated to RC0 automatically. So do *not* publish...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 2 Unleashed: Table of Content

I am currently attending a workshop for Siemens in Chicago's suburb, and also staying for the weekend. In fact it feels pretty weird because for the first time since a year, I don't feel the pressure of "must write" on my shoulders, and I can actually spend some time thinking of something else than Silverlight 2 Unleashed... Which is why I am now writing a book about Silverlight 2 Unleashed (available on pre-order at Amazon and to be published really soon :) I finished reviewing the very last chapters...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Sams Silverlight 2 Unleashed (was: Teach Yourself Silverlight in 24 Hours)

My editor at Sams (hey Neil :)) and I decided to convert the book I am almost done writing into an Unleashed. There are multiple reasons for that, the most important being that the book addresses multiple audiences, and has a broad range of coverage, which is typical of the Unleashed series. The content goes enough in depth (according to Neil) to be placed in the Unleashed series. While the Unleashed series usually targets more advanced users than the Teach Yourself one, this book has lots of content...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Preorder my Silverlight book on Amazon

Wow. That's an incredible feeling, seeing my name on Amazon :) The book is in pre-order!! I'd better get back to editing it then :)...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Sams Teach Yourself Silverlight in 24 Hours, Table of Contents

I've been working since September 2007 (more or less) on an upcoming Silverlight book titled "Teach Yourself Silverlight in 24 Hours" at Sams. This book will be aimed at beginners with the technology (and maybe even beginners in programming). The reader is walked (with a lot of code samples and step-by-step examples) through most features of this amazing technology. The book has 24 chapters, each of them taking more or less (maybe rather a little more than a little less, to be honest :)) one hour...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Joining IdentityMine (and leaving Siemens)

These last months have been amongst the most intensive I have ever been in my life. Since my last blog post, I have been extremely busy finishing writing my Silverlight book and starting the editing work. It is well underway, and we will publish later this year. It is a very exciting time for me to see that book shaping up after almost a year of work on it. Yes I will be happy to see the finished, paper-printed work!! Another reason why this time of the year has been especially exciting for me is...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 2 beta 2 is live!

Here we go, Silverlight 2 beta 2 can be downloaded and installed! I had the chance to take part to an "insiders" program at Microsoft, and to play with SL2 b2 for a couple of weeks, and it's a good one. You should switch to b2 as soon as you can! There are obviously incompatibilities between b1 and b2, but much, much less than between the alpha version and b1. We're getting there!! Silverlight 2 beta 2 will be used to build applications related to the Beijing olympics, so it's going to be a real...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

A short break

I am going to take a short break of blogging for a couple of months. The reason is simple: I have been working on a book about Silverlight 2 since September last year, and we are in a phase now where I need to concentrate on that exclusively, and put other activities aside. I might post the occasional article from time to time, but until mid-Summer, it's going to be write write write. Stay posted for news about the book coming up, and don't delete me from your feeds, it's really only temporary :)...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

WPF talk this Thursday: "Ultra Rich Interactive Applications"

I have been in very much stress lately and hardly had time to post, but I don't forget you, dear readers... Anyway, this Thursday, I will be talking in a RIA conference organized by the Internet Briefing group here in Zurich, in the World Trade Center. My talk is titled "Ultra Rich Interactive Applications with WPF" and subtitled "When Silverlight is not enough...". I think it's going to be an interesting talk (but obviously I am partial) about the major differences between WPF and Silverlight, and...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: User Controls with events

This article is for Silverlight 2 beta 1 Update: Corrado Cavalli translated the example in VB.NET. Thanks Corrado!! Apparently, one reader had issues declaring events for the User Control example that I posted earlier this week. He is programming in VB and unfortunately I don't have a lot of experience with VB.NET, so I first created a working example with C#, and my good friend and fellow MVP Corrado Cavalli translated the example in VB.NET (see below). The big difference between WPF and Silverlight...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: Running standalone full trust applications

Introduction I guess that it's time to write about it, after making a few people curious at the MVP summit in Seattle. This article is to be taken as a proof of concept, and (I hope) as a way to "motivate" Microsoft to integrate this ability into Silverlight. As soon as I started playing with Silverlight, I saw the great potential that this technology has. As a RIA technology, it provides extended functionality over the web. As a WPF subset, it allows me to leverage the knowledge I already acquired...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: Packing user controls in separate assemblies

This article is for Silverlight 2 beta 1 There is a common misconception that User Controls in Silverlight must be placed in the assembly from which they are referenced. However, this is not true, you can have user controls in an assembly and use them from another assembly. This is not a direct process, however, so let's see how to proceed: Preparing the control Create a new Silverlight 2 application in Visual Studio. In this example, we'll name this application "UserControlsPacking". For this first...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

De WPF Integratio (About WPF Integration)

Introduction I've been posting a lot about Silverlight lately, but hey, here is a WPF post, and about WPF integration, no less. Note: To fully understand this article, you should have a basic understanding of WPF, styles and templates, triggers, etc... In my current project at work, I act as WPF Integrator. I am that dude who sits between the designers and the developers, and tries to avoid that they fight too much. Or something. Sometimes it works, sometimes it doesn't, you know how it is with kids....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight unit testing and JavaScript

I am currently writing a Silverlight class library which I want to use in a project, and decided to try Test Driven Development for this class. This is a really nice way to work, and the Silverlight development team made this very easy by providing a unit test framework easy to integrate into Visual Studio 2008. (Note: You cannot simply use the built-in unit test framework, because a non-Silverlight application cannot reference a Silverlight class library). To find information about where to download...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight Bug: Transforms and OpacityMask

Introduction In WPF, one of the best know effects is the "reflection" effect, where a scene reflects itself dynamically. It's a very cool feature, because it's really easy to realize, and it allows to reflect images, but also videos or other User Interface scenes. The key to this is to use a VisualBrush. Silverlight is not exactly as powerful as WPF, and doesn't have VisualBrush, but it has ImageBrush and VideoBrush, both of them allowing cool media reflection effects (these brushes can also be used...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 2 beta 1: ScrollViewer with auto-layout crashes both IE and FF

Update 2: The Silverlight team at Microsoft was able to reproduce the bug, and it has been entered in the bug database. Thanks all for your precious help!! Update: Apparently this bug is not consistently reproducible. If you get the bug, please enter a comment with your system information. I was able to reproduce on a number of machines and OS, but on some other PCs it works just fine. Here is an interesting one: <UserControl x:Class="GalaSoft.SL.Scroll... xmlns="http://schemas.micro...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: The Power of Skinning by Corrina Barber

If anyone still needed to see the Power of Skinning for Silverlight controls, well, Corrina just did it (again). In addition to the 3 existing skins "Bubbly", "Red" and "Flat", she just published a 4th one "Rough" (click on the links for a live demo, requires Silverlight 2 beta 1). More information about the skins, including a download link for the source code, can be found on Corrina's blog (Bubbly, Red, Flat; Rough) Rough skin Bubbly skin Red skin Flat skin...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: Downloading Zipped files with the WebClient

In the "old" alpha edition of Silverlight, you could use the Downloader class to download a zip file containing one or many packed media elements (images, videos). The Downloader provided a progress report (to update a progress bar, for example). After the download was completed, you could use the Image.SetSource or MediaElement.SetSource method to directly unpack one file from the downloaded zip file. In Silverlight 2 beta, the interfaces changed, but you can still do the same operations. Let's...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: Don't forget to add the XAP extension!

Silverlight 2 now packs all the files needed to run the application in a XAP file (which is essentially a ZIP file). Think of the XAP file a little as the JAR files of Java applets. Because these files must be served by the web server in the correct way, it is necessary to pay attention to this extension (we had exactly the same problem when XBAPs were introduced, or for serving "pure XAML files". Brad Abrams has a post explaining the problem, and showing how to configure your IIS6 web server. If...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#MIX08: Wrap-up post

MIX08 is over, and I am home with what one could call the "post-MIX" mood. It's a mix (pun intended, haha) of various feelings Obviously I am extatic to be with my family again, even more so because I was away for almost two weeks, which I usually try to avoid. It's just so good to be with them again. I wish I could take them with me every time I am abroad. Excitement about all the new things we saw. Thinking all the time of what I'll be able to improve in my various projects using these new techniques...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#Mix08 Session: What's New in Windows Presentation Foundation 3.5

Check WindowsClient.net for updates Some parts of the demos are not available yet in the current build - wait for the next beta Compatibility with Silverlight is important Same tools, designers, code, markup... This summer, .NET framework 3.5 service release Improved setup Fuill install available Also client-focused ~30MB install Parts of WCF Parts of LINQ WPF Deployment of application will be simplified MSI, ClickOnce, XBAP MSDN Reader demoed, looks really good. Source code is available Add-In framework...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#Mix08 Session: Nerd + Art: Ten Code Snippets to Empower Your Inner Artist

Robbie Ingebretsen: "This is a creative experiment" "We didn't always look into best practices" Talks about the Integrator role. Nathan Dunlap: "Designers should probably use Visual Studio more" "It's a great tool to dive into the code,check the SDK..." Snippets are distributed as a Snippet installer VSI file. Silverlight code snippets WPF code snippets By the way, check Dr WPF's snippets too! To access the Nerd snippets in the code, simply type "nerd". Displays the list of all snippets. Custom Control...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#Mix08 session: Overview of Expression Encoder 2

Expression Encoder 2 is now a standalone product, not part of Expression Media like before. Download it from the Microsoft Expression 2 website. Live encoding, events, etc... Smart recompression, for example if you just edit some of the video, only the cut will be recompressed. Animations in XAML can be burnt inside the video. Closed captions. Improved Silverlight players, including a video gallery player. More options for interlaced content. .NET object model. Demo New codecs Aspect ratio is easier...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#Mix08 evenings are pretty cool

So last night was the last evening for many (but not for me since I am flying only tomorrow, ha ha), and there was a number of dinners and parties going on. I was lucky to be invited to a great dinner at Zeffirino's thrown by IdentityMine. These dinners are always wonderful occasions to meet and talk to the big players in the field of WPF and Silverlight, designers and developers mixed. Yesterday was not an exception to that rule, with Scott Guthrie, Miguel Icaza (of Moonlight and Mono), Grant Hinkson...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#MIX08 Session: Touch Me: Where Are Interfaces Going?

Cynergy.Labs, cool concept of "no touch gesture", with a "pinch" gesture to manipulate objects Challenges with Touch-based interfaces It's ambiguous. You're never sure where the next "touch" is going to be. Dominant hand plays a role in tactile interfaces "Now we can detect the shadow of the finger and know where it will land" Voice is going to be the next big move in user interface "Having a developer and a designer in a room is like having a humidifier and a de-humidifier in the same room" :)...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote with Steve Ballmer and Guy Kawasaki (7)

Ballmer really knows his facts. First time I see him speak, I find him impressive. Better than last year's keynote with Ozzie, and I would even say better than 2006's keynote with Gates and O'Reilly
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote with Steve Ballmer and Guy Kawasaki (6)

Ballmer: "Silverlight for iPhone is interesting, we want to have Silverlight everywhere" Ballmer "But I am not sure that Apple will welcome a royaltie-free, open platform running on their phone" Ballmer "All the relevant applications we have on the web will move to Silverlight" Woman from the floor "I love it that there are no bathrooms line here" Q&A from the floor is really going well. Ballmer did the monkey for web developers :)...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote with Steve Ballmer and Guy Kawasaki (5)

Questions from the audience What about Adobe? Ballmer "Yeah, what about Adobe?" Adobe is a competitor for Silverlight with Flash and Flex Will remain an important company in the business for a long time We will look into supporting them well as an ISV
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote with Steve Ballmer and Guy Kawasaki (4)

Ballmer to Kawasaki "Get rid of that MacAir, we'll get you a real machine" Ballmer is a a very good mood today, and Kawasaki is a great interviewer! Kawasaki "It's a really different Microsoft today, not arrogant anymore, answer email faster than other companies, really helpful" Personal note: It's so true
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote with Steve Ballmer and Guy Kawasaki (3)

Ballmer: "I love what we do" referring to Silverlight 2 . Ballmer has "3 kind of days. Ballmer expects "more than 60 emails tomorrow" after mentioning his email address a couple of times. Hilarious bit where Ballmer takes a MacAir in the hands and acts as if it's sooo damn heavy :)
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote with Steve Ballmer and Guy Kawasaki (2)

Ballmer to Kawasaki "Yes I can say Google". Ballmer "We are the underdog in the search business". Kawasaki "So for you is Apple just that little chihuahua that you kick away?" Ballmer "Underdog in the music business too, apple is doing a really good job there"
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote with Steve Ballmer and Guy Kawasaki (1)

The keynote is transmitted live at http://tinyurl.com/2x63xc
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

#MIX08 Session: Creating Rich, Dynamic User Interfaces with Silverlight 2

Karen Corby NB: Code will be posted on Karen's blog User control, motivations Re-use Modularization Encapsulation Same concept as in WPF No more need for "InitializeFromXaml()", good news. The "XAML hook" is done for us by the framework KeyDown Event can now be handled on any component level, not just the application level like before Databinding in Silverlight, how much sweeter can it get. Can't wait to play with it... Wondering how well the MVVM pattern can be used in Silverlight. Oh yeah, flow...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Bug in the Session matrix viewer

Oh my god, huge bug in the MIX08 session matrix viewer. Shows that localization is really not as straightforward as some may think :) Tip for the developers: On a french culture PC, the date is written "05.03.2008" meaning 5th of March 2008. On a US culture PC, "03/05/2008" means the 5th of March. When you convert from one culture to the other, you really need to look into the CultureInfo class :) Kind of embarrassing for MSFT :)...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08 session: Real World Design: Working with Silverlight and WPF in the Design Studio

Q: Who owns the XAML? A: Noone does, it's a tool between the designers and developers. Personal note: In my opinion, there are multiple types of XAML: Functional XAML, owned by the developer. Look&Feel XAML, owned by the designer. Also, we have a UI custodian role, a mediator between product owners and development teams. He owns the UI. Blend is used more and more as (or instead of) interaction wireframes, because oif the ease of use and how much more interactive it is. Lots of interesting questions...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: No more synchronous web request...

Apparently, one big thing was removed from Silverlight between Alpha and the current Beta 1: It's not possible to make synchronous web requests anymore. I must be honest: I have always been recommending against synchronous requests from a web browser to a web server. But it was nice to have the possibility to do it. I can think of a couple of scenarios where it makes sense. What I don't quite understand is why they removed it. The reason given yesterday (that it blocks the UI thread) is not really...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: Downloading the Beta 1 bits

Silverlight 2 Beta 1 runtime Download Microsoft Silverlight Tools Beta 1 for Visual Studio 2008 (contains the SDK) Download Microsoft Expression Studio 2 Beta (contains Blend 2, Design 2, Web 2, Media 2 and Encoder 2) Download Microsoft Expression Blend 2.5 March 2008 Preview (can be installed side by side with Blend 2) Download Microsoft® Silverlight™ 2 Software Development Kit Beta 1 Documentation Download Source Code and Unit Tests for Silverlight 2 Beta 1 Controls Download...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Day 1 is over (well, except for the party at Tao)

So, day 1 is over. I met so many people and had so many great talks that I am, again, really happy to be there. Quite tired too, though, so I need a shower and then it's out for dinner. Tonight also features a party at Tao, a club into the Venetian. Another great occasion to network, I just hope the music won't be too loud (am I getting old or what) because when I am tired and its loud, it's harder to understand the English language :) but I am sure I will be fine. More to come tomorrow, for MIX08...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Building Rich Internet Applications Using Microsoft Silverlight 2, Part 2

NB: All the demos from the talk are on Mike Harsh's blog. Create a Custom Panel Add new class Inherit from Panel Public default constructor (for XAML) Override Measure and Arrange Use in XAML AnimatingPanelBase (by Robbie Ingebretsen) demoed by Mike Harsh right now, nice! Showing customization of controls using Styles and Skins. IsolatedStorage, nothing is new, same as in Alpha version of SL. INavigationState interface allows Back and Forward button to work with the Silverlight app easily. DeepZoom,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Building Rich Internet Applications Using Microsoft Silverlight 2, Part 1

Joe Stegman, Mike Harsh V2 Beta1 today V2 Beta2 (go live) in Q208 No date for final release yet Visual Studio packages all necessary files into a XAP (which is actually a Zipped archive) New layout elements (Grid, StackPanel, etc...) New controls (TextBox, Button, etc...) Using WebClient for simple HTTP requests asynchronously (confirming that synch HTTP requests is just not possible anymore!) Converting XML for .NET objects: LINQ to XML XML Reader XML Serializer Very cool formatted datagrid demo!...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Working with Data and Web Services in Microsoft Silverlight 2

Pretty full room. Sorry VERY full room. Glad I cam not too late, even managed to find a plug for my laptop. Any application will need to communicate wit a source of data outside of the browser Product catalog, product database, etc... What kind of data? media (images, sounds, videos) feeds specific services for your app Existing Intranet services public internet services Silverlight 1.0 connects to Media already to connect to other services, use JavaScript and AJAX In Silverlight 2, managed code...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08 Keynote (11)

WeatherBug New Silverlight application running on Nokia Cool app, "very easy to develop using Silverlight" Scott Guthrie Wrapping up and summarizing. Time to have lunch
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08 Keynote (10)

Cirque du Soleil Use WPF application to track cast information Cirque du Soleil recruiting ScottGu for their shows. Good idea. "Come see the Man Who Never Sleeps". Scott Guthrie Performance for WPF videos and image handling MUCH better. Pretty cool Write custom effects in WPF and they are pushed to the hardward for acceleration. (for example ripples, shadows, etc...) Effects applied to controls during runtime, physics engine calculation, all pushed to hardware for better performance. All these included...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08 Keynote (9)

Scott Guthrie about Silverlight Silverlight controls developedby MSFT are shipped as Open Source! Devigner role officially mentioned in ScottGu's slides! Yes I do exist! Show off new SL 2 applications AOL Builds new AOL email client using Silverlight. Using IsolatedStorage much faster and more advanced than using the browser cache. Scott Guthrie Enable user experience that doesn't exist today. Deep zoom. Based on research project. Navigates through very large images by downloading only portions of...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08 Keynote (8)

Scott Guthrie: Silverlight 2 features: Cross browser cross platform version of .NET Multi language support WPF UI framework (as a subset). Use controls, layout management. Databinding support Skinning, styling Animation support Networking (REST, SOAP, etc...) Built in support for Sockets Integrated data support, including LINQ Local cache store High performance Small download, fast install(4.3 MB download all inclusive) Linux implementation of SL2 available. Includes Calendar control, Datagrid control...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08 Keynote (7)

Scott Guthrie: Strategic alliance with Move Network using SL2. Windows Media Services 2008: scalable solution, runs on top of WIndows server 2008, is free. Progressive download: IIS7 media pack shipped last week with Bit Rate Throttling and Web playlist, also free. Business opportunities with advertising in Silverlight John Harris, Senior PM on Expression: SL 2 advertisement demo New ad templates for Silverlight with built-in banners, including animations for appearance, etc... Move to Blend to position...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote (6)

Dean Hachamovitch (IE General Manager) IE8: Select an address, choose "Live map" from a context menu and get a Live Map view of the place. Web slices: User can subscribe to parts of a web page. Hover on a part of the site, icon shows up, select a "web slice" and subscribe.Displays a new bookmark, live view of the web page "extract". Beta 1 of IE8 available for developers after the keynote Scott Guthrie Quick peep of live Silverlight sites. 1.5 million installations of Silverlight per day, should...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote (5)

Dean Hachamovitch (IE General Manager) CSS2.1. Demo in Firefox, Safari, looks the same. Opens in IE7 and it doesn't look the same.IE8 supposed to be the answer to that. First time showing IE8 to the public Focus on CSS and understanding standards the same way than developers are. Legacy web. Legacy pages developed for IE look bad in Firefox and in Safari. IE8 has a "Emulate IE7" button for legacy pages. In the future, IE8 should behave just like Firefox and Safari, at the risk of breaking legacy...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote (4)

Ray Ozzie keynote: "Many amazing technologies available today, but I would like you to bet on us" Oh really? Scott Guthrie keynote: Just launched .NET 3,5, VS2008, IIS7, Windows Server 2008 Scott talks about the new features in ASP.NET 3.5, mentions LINQ IIS7 makes deployment and administration much better Dean Hachamovitch (IE General Manager) Introduces IE8 Cool T-shirt #Mix08...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote (3)

Ray Ozzie keynote: "Connected entertainment vision" Office offering: Desktop, Mobile and Web, all connected in a seamless experience. Office Live: Linking, sharing and tagging of documents for the social mesh. Connected business. CRM like MSFT Dynamics used by half a millions small firms worldwide. "Utility computing within the enterprise". Power of choice (again). XNA, .NET WPF, Silverlight, ASP.NET Expression Studio for designers Visual Studio for developers .NET in the middle of it all #Mix08...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote (2)

Ray Ozzie "can't talk much about the Yahoo deal". Ray talks about the community and its importance for the technology. Advertising is really important forMSFT strategy. "Ensure a vibrant advertising ecosystem on the web". "3 core principles that we are using" "Web as a hub, for our social experience and social mash", linking, sharing, tagging on the web will become familiar to all of us. "Number and variety of devices on the rise". Web as a hub to simplify our life in managing the devices. "Power...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Keynote

So here we are, the breakfast was had, and now we're getting ready to listen to MIX08's keynote. I will do my best to post new information as we receive it. To make sure that you don't miss anything, check this page: http://hashtags.org/tag/mix08/ That's an interesting project: It scans through all the twitter feeds carrying the tag "#mix08" and aggregates them. Many tweeters here are using this setting, so it's a good way to keep track of what's happening in real time. I just regret that there is...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: Running on Nokia mobile phones

Published today in Yahoo News, the news that was announced earlier that Nokia phones will run Silverlight mobile. Great news indeed, even if the details are not known yet. I find it funny that Yahoo News publishes this news in the "Linux/Open Source" section :)
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Random pieces of news (3)

Interesting concept for localizing Silverlight applications using a "resource" JavaScript file. Presented by Brad Abrams. Amazing set of new controls for Silverlight 2, including a datagrid. Where's the WPF-based one, Microsoft? Multiline textbox in Silverlight 2.0 (but you're not supposed to talk about it :) ASP.NET MVC framework for URL mapping. I think that ScottGu blogged about that before, something I definitely want to look into (when I'll have time, ah ah ah) Tim Sneath on WPF and Silverlight:...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Random pieces of news (2)

Next version of Expression Blend is going to be V2.5 Expecting another important announcement about Microsoft Expression tomorrow. XNA (game development platform) may allow web programming soon? Many Silverlight-related announcement coming up tomorrow. I expect to see a lot of Silverlight mobile at the key note
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX08: Random pieces of news

Expression Studio V2 is coming this April. It will include V2 of Expression Design!!! (Yes, finally) Expression Design V2 allows selecting a "slice" of your design and export it to XAML directly. Seems that the export process improved a lot. Not sure about roundtrip export-import though. V2 of Expression Studio contains Blend, Design, Web, Encoder, Media. Expression Web 2 supports PHP with Intellisense, Syntax coloring, Local preview with Cassini (development web server). Insert Flash, ActiveX, Window...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX: It's starting

For those of you who read this blog from Nebula IV and are not aware of it yet, MIX is starting this week. Today is the pre-conference event, Together@MIX.This morning is packed with sessions, and this afternoon we will take part to some "fun" events. For my part, I am going to take part to a horse ride in the desert, that will be fun for sure. During the conference, I will report as much as I can on various channels: For blog reports, stay tuned to http://blog.galasoft.ch (that's exactly the same...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: Passing null values or empty strings (revisited)

(wrote this in the plane from JFK to Las Vegas) In a previous post, I mentioned that it's not possible to pass empty strings from JavaScript to a Silverlight application. It seems that it was not correct, or at least not complete: It is in fact possible to pass null values or empty strings, but not the content of an empty HTML textfield (input type="text"). Let's see: <body> <div id="SilverlightControlHost" class="silverlightHost" > <script type="text/javascript"> createSilverlight();...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MIX: Building the schedule

I am in Princeton NJ for the weekend, after spending a few days with our graphics designers, working on our WPF application. It was very nice again, and I love the new design we have. I miss my family, but determined to make the best of this trip and to take life positively as usual. I plan to drive down to Philadelphia tomorrow for a short visit (I have been in Philly once before, in 2001). I finally managed to build my schedule for MIX. I was very strict this year and selected only maximum two...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 2.0: Passing empty strings from JavaScript to .NET is not possible

Update: Check this post Apparently, it is not possible to pass empty strings from JavaScript to .NET. Even worse, if the .NET method has two string parameters, and one of them only is an empty string, the .NET method will not be called. This is fairly easy to demonstrate: Create a new Silverlight 2.0 application in Visual Studio 2008 Open the file "Page.xaml" Add two TextBlocks: <TextBlock x:Name="DisplayTextBlock1" Canvas.Top="120" Canvas.Left="10" FontSize="24"/> <TextBlock x:Name="DisplayTextBlock2"...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: Debugging in HTTP from Visual Studio (also the Downloader!)

I had been looking for this for quite some time, and I finally found the answer (number 14 on Google with keywords "silverlight downloader debug"). Number 14 is really too low (that's on page 2, for Pete's sake). Hopefully this entry will be found more easily. Problem: When you execute a Silverlight 2.0 application in Visual Studio 2008, it gets executed in the "file:" protocol. The page's URL starts with C:\ (or D: or E:...) or with "file:". This has the side effect of changing the page's permissions....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: When should you use RegisterScriptableObject?

One of the most exciting features of Silverlight 2.0 is its ability to let .NET and JavaScript communicate in a very direct way. JavaScript objects can call .NET methods directly, and register for .NET events. On the .NET part, this needs a little preparation. There are two steps that you need to perform to enable JavaScript --> .NET communication: Register the object you want to script. Mark every scriptable member with the ScriptableAttribute. The first step lets the web application know that...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

KaXaml V1.0 released

I hardly believe that anyone reading this blog doesn't know Robby Ingebretsen's work, but just in case, he has great news: KaXaml 1.0 is released!! More information about this great tool here. Also included: XSD-based Intellisense support (like in VS2005) and basic Silverlight XAML support...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

MVP, take two / Silvelight greeting card

Just got the good news: I am a MVP for one more year :-) My first MVP award last year was for ASP.NET, but due to my new tasks in the field of WPF and Silverlight, I've been awarded one for Client Application Development this year. I think it makes sense, since my activities are really focused on the client (not just the UI, but mainly), and this is also what I have been blogging and speaking about last year. 2008 is going to be great. I already have 2 conferences as a speaker planned, one end of...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 2.0: Project template for self-resizing applications (update)

An observant reader gave me a better way to automatically resize a Silverlight application. The way I published in my last post was inspired from Silverlight 1.0, where JavaScript is obviously needed to do the job. However, in 2.0, you can register for a CLR event and avoid the multiple conversions between JavaScript and C#. These conversions take time and it's better to avoid them when possible. I modified the Project Template accordingly. You can download the updated version here, and follow the...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 2.0: Project template for self-resizing applications

Update: I posted an updated version which doesn't use JavaScript. See here. One of the first things I often do when I create a new Silverlight application is to make it self resizing. This is not very difficult, because thanks to the goodness of WPF (of which Silverlight is a subset), resizing a scene only involves one simple operation: a ScaleTransform. This transform applies to a panel (in this case the top Canvas) and to all its children. Using a ScaleTransform, all the distances (dimensions,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight 2.0, Visual Studio 2008, new Alpha tools for Silverlight... hot winter!

The community is buzzing with the news about Silverlight 1.1 being re-versioned to 2.0; I really think it makes sense, given what will be added to the platform until next year. Like others, I wish that the marketing message regarding Silverlight and the "big sister" WPF gets a little clearer, and that WPF really gets more of the attention it deserves. It's a great technology, but it still has a few rough edges. Let's hope that the huge progresses made to the version 2 of Silverlight will contribute...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Creating animations in code with Silverlight 1.1

I didn't write here in quite some time, due to a hectic work schedule and a private Silverlight project taking all my time. It's going great and in the course of realizing it, I stumbled upon something I think I should post about: In the current version of Silverlight 1.1, creating animations in code by creating a new Storyboard and one or more new (for example) ColorAnimation(s) is not possible. In WPF, you can do this, but Silverlight doesn't have this ability yet. Thankfully, there is a workaround...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: Bug with RadialGradientBrush OpacityMask

Update: Just posted this at http://silverlight.net/foru... I stumbled upon a bug in Silverlight today related to the way it handles OpacityMasks with a RadialGradientBrush. Try the following code: <Canvas Background="Red" Canvas.Top="0" Canvas.Left="0" Width="320" Height="240"> <Canvas.OpacityMask> <RadialGradientBrush> <GradientStop Offset="0" Color="#FF000000"/> <GradientStop Offset="1" Color="#00000000"/> </RadialGradientBrush> </Canvas.OpacityMask>...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: There's more to it than "just" video

As I was listening today to the new Foo Fighter CDs I bought a few days ago, I realized that I love one of the tracks: "But, Honestly" (on "Echoes, Silence, Patience & Grace"). In fact, I especially like the second part of the song, with an incredible progression in energy, Dave Grohl's great voice and guitar and the bass and drums bringing the whole crescendo to an harmonic explosion (I feel like a poet today...). It is so good that I thought "I should really mention this on my blog", and I...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: A jump back in time

Hilarious experience today: I happened to stumble again on Tim Sneath's announcement of Silverlight in April this year. I spent a moment reading the comments, and it was really funny! I especially liked the Linux crowd saying (in essence) that there would obviously NEVER be a support for Linux. Also funny, the statements that Microsoft is bad for trying to compete with Adobe Flash's omnipresence. You got to love that, especially when the next message says that Microsoft is bad because of their past...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight enabled GalaSoft

GalaSoft is my webpage, where I post information about all my private projects. It's not a firm, it's a project that I use to coordinate my efforts in all the technologies I am interested in. As such, it was pretty natural to add Silverlight content to it. Silverlight is an area where I will be investing a LOT more time from now on, for reasons I will mention in further posts. After posting a screencast about WPF in Silverlight format, the next step is to add a Silverlight logo on some of my pages....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Designer - Developer, a new collaboration with WPF (Screencast)

I posted a 50 minutes screencast on my website, with a demo involving Expression Design, Expression Blend and Visual Studio 2008 to demonstrate the workflow between the designer, the developer and the WPF integrator in a WPF project. In this demo, I build the foundation for a PDA application from scratch, using VisualBrushes, ControlTemplates, Animations, Gradients, etc... I also use a 2-DLLs architecture, one of them containing all the resources needed to create a new "skin" for the application,...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

WPF, Silverlight: Things I like in Visual Studio 2008 XAML editor (September CTP)

The excellent Nathan Dunlap posted on the 18th of September about Blend September CTP, and the new features he likes. It's very much in line with what I have been thinking too since I tried this latest edition, so I am not going to repeat it, just go ahead and read his post. (By the way, it's good to see Nathan blogging more lately, very happy about that :-) On my end, I want to mention a few things I really like in the XAML editor in Visual Studio 2008 September CTP: When you type a control (for...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Blend: Canvas mode vs Grid mode

I stand corrected, the "locks" are still there. Following yesterday's post, I got a comment indicating me the cause of the confusion: Somehow, when I installed the September CTP of Blend 2, my settings were changed (probably by my own doing, in fact), and I unchecked the "Use grid layout mode" checkbox in the "Artboard / Layout" section of the options. This causes the grids to be displayed as a kind of canvas, on which the controls can be positioned in an absolute manner, instead of "fixing" them...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

WPF/Silverlight: Installed Blend V2 September CTP

Update: I stand corrected, the "locks" are still here. See here! Thanks Christian! My August CTP version of Expression Blend expired just as I was in Italy sitting with developers and doing some integration work, but thankfully when it expired, it gave me an additional 30 days, so I could continue to work. Once back in Switzerland, I downloaded the whole September CTP package and installed everything. It went smoothly, and I can now enjoy Blend 2 September CTP with quite a few cool new features....
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

WPF: There's a new doc in town

If you hang out on the WPF forums, you probably noticed some very, VERY advanced replies recently made by a certain Dr WPF. Well, the doc doesn't only answers on the forum, he also has a blog. Additionally to being one of the best .NET (and thus WPF) programmers around, he also has an amazing sense of humor... just take a look at the Seldomly Asked Questions (With Answers) on his site, it's better for your health than any prescription! Keep posting, Doc! Signed: Your old Pal Jim :-)...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

WPF talk last Tuesday

The WPF talk about the new collaboration between Designers and Developers took place as planned last Tuesday in front of the .NET User Group of Switzerland. Approximately 25 peoiple showed up, which made me very happy, for a first presentation! The talk went OK, though I was a bit nervous and I think that it showed a little. Thankfully I was feeling quite comfortable with the subject, which helped me when after 40 minutes of demo my computer suddenly shut down! It's so silly I almost don't dare to...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

WPF talk tomorrow: Windows Presentation Foundation, Between Designers and Developers

Reminder: I will be talking in front of the .NET Managed User Group of Switzerland about the collaboration between graphics designers and developers with WPF. All the talk's details can be found here. With the release of the Windows Presentation Foundation UI framework in November 2006, a new collaboration is made possible between graphics designers and software developers. Designers are now creating source code (XAML) instead of Photoshop mockups. On the other hand, developers must learn to delegate...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

WPF talk: Windows Presentation Foundation, Between Designers and Developers

It's now official: I will be talking about the new collaboration between designers and developers with WPF in front of the .NET Managed User Group of Switzerland. Here is the abstract: With the release of the Windows Presentation Foundation UI framework in November 2006, a new collaboration is made possible between graphics designers and software developers. Designers are now creating source code (XAML) instead of Photoshop mockups. On the other hand, developers must learn to delegate part of their...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Designer-Developer week / Talking with Microsoft's Simon Guest

Designer-Developer week I was pretty busy this week, spending most of it in Milano, where we have one of our development teams. We met some of our designers to work on and refine the designer-developer workflow that we will use during our WPF UI development. It was a very interesting week, because we had to learn to speak the same language (we already know each other, so the learning curve was not too big, but still). I called that the designer-ish / developer-ish translation. It's very interesting...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: Ah the pleasure of breaking changes...

First thing I noticed after installing Silverlight 1.0 RC1 is that the video on my PhotoAlbum didn't work anymore. There is an update for Expression Media Encoder which produces new JavaScript files for the video player, and which breaks the customizations I made. Unfortunately, it's not something that I can fix in 2 minutes, so I'll probably have to work on that a little more next week. In the mean time, I placed the video player on a separate page, without the fancy XAML animations I made. I also...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Back home after two weeks in Sicily / VS2008 Beta 2 and Silverlight 1.0 RC1

Back home I am back home after 2 weeks spent in a road trip around Sicily, Italy. We had a great time, and I will document the trip gradually in the next few days on my PhotoAlbum. It was really nice to let go for a moment, and I barely did anything work related (except reading 4 chapters of Adam Nathan's WPF book and catching up with blogs during the last hotel stay of the trip). I found no wireless connection during the trip (except once in Taormina and then in Palermo) but I didn't look for them...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: Video on my PhotoAlbum website / Going in holidays

Silverlight video on my PhotoAlbum website You can now watch videos on my PhotoAlbum using Silverlight!! Currently, two pages have video: Pune, India and Calcutta Rescue's projects in Kolkata. To start the video, locate the thumbnails marked with a "movie" label, and click them. Modified player.xaml I spent a few hours this week tweaking and learning to know the Silverlight video player created when you encode a video using the Expression Media Encoder application. I modified the player.xaml and...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight Streaming: No need to be careful anymore :-)

In my last post, I mentioned a problem occuring with Silverlight Streaming if the application's name starts with a number. Apparently, Microsoft is listening, because the problem has been corrected. I just uploaded a new video, and noticed that they now add a "Wrapper" prefix in front of the JavaScript variable. With that prefix, the JavaScript naming rules are always respected, and thus your application can be named whatever you want...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight Streaming: Careful with that application's name!

I lost some time today with that error, so be careful what you name your Silverlight Streaming application! Silverlight Streaming is a service offered by Microsoft, 4 GB of storage for your Silverlight applications, which will usually be used for streamed videos. When you create a Silverlight Streaming application, you may name it anything, and apparently the name is not validated. In my case, I thought I'd be clever, and I named my first application 2007070201MumbaiPuneTraffic, with the string "2007070201"...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

End of WPF training in Pune / Visit to Kolkata, India

Ending the WPF training in Pune The WPF training in Pune, India went great. We finished on time, I spent the last afternoon showing various resources and demonstrating how to create a basic Silverlight application, as well as make Silverlight videos. This is not strictly speaking in the scope of the training, but with the WPF background acquired during these 3 days, moving on to Silverlight is really easy, and really motivating too. After Pune, and after a very nice dinner with Nikhil, the indian...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

WPF training (Swiss edition) completed

Life is pretty good in the moment. I just finished giving the WPF fundamentals training to my Swiss colleagues. We also had the pleasure to host two US colleagues from Chicago who came specially for the training. I hope it was worth it, but I can safely say that everyone had fun and learned a lot in 3 days. That's a very short time to getting to know WPF, and noone became a WPF expert between Monday morning and Wednesday evening, but everyone improved their knowledge and, most importantly, I put...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Various WPF resources online

Community WPF Community : http://wpf.netfx3.com/ Silverlight Community : http://silverlight.net/ http://wpfwiki.com/ Microsoft employees: http://weblogs.asp.net/scot... (Scott Guthrie) http://blogs.msdn.com/karst... (Karsten Januszewski) http://blogs.msdn.com/tims/ (Tim Sneath) http://rrelyea.spaces.live.... (Rob Relyea) http://www.beacosta.com/ (Bea Costa) http://work.j832.com/ (Kevin Moore) http://scorbs.com/ (Karen Corby) http://nerddawg.blogspot.com/ (Ashish Shetty) http://blogs.msdn.com/danle...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

WPF: Finished the Expression Design / Expression Blend hands-on lab

Update: Removed the IFRAME, because of annoying "download" effect in Firefox. Added a link to the XAML page instead. Excellent lab!! I finished today the lab I started yesterday about Expression Design, Expression Blend and their collaboration. Actually, it's still not really a collaboration, to be honest. You export XAML from Design, and you add the exported file to the project in Blend. If you choose to modify the icons in Design, however, you must reimport and then make sure that the changes appear...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

WPF: Expression Design hands on lab

I just finished the first half of the "Creating WPF buttons with Expression Blend and Expression Design" hands-on laboratory created by Karsten Januszewski. It's a really cool lab, especially for a WPF integrator with a developer education. I was always interested in design, but I am really not a designer, so it's quite nice to learn a few tricks and techniques. The lab introduces a technique consisting of using a picture on a layer, and then redrawing the object on a layer on top of that, using...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Silverlight: More tutorials, and really good ones!

Celso Gomes, excellent designer working for the WPF team (Blend, Design and Silverlight) put together a Silverlight only website with great short tutorials. I just took the "Animations" ones, and I like the concept. Short lessons, easy to remember. Side note: This is the first Silverlight-only website I saw (after a looooong raw of Flash-only websites). While I find Silverlight much more appealing than Flash for the developers, the huge strength of SIlverlight over Flash is the ability to interact...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Scott Guthrie talks about the future or ASP.NET and Orcas

The ReMix event was nice, well, not really comparable to Las Vegas, of course, but it was nice to see the demos again. For me, in fact, the real opportunity was rather to connect with other people interested in these technologies, and in this aspect it was really nice. I've been wanting to meet Ronnie Saurenmann (the guy behind the Zurich Airport XBAP and the "Outlook-like" WPF hands-on lab) for quite some time, I hope for the beginning of a nice collaboration. Of course the icing on the cake was...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Road to Silverlight: My First Silverlight Application

I just published my very first Silverlight application to my website. OK, I just had like 1 hour to build it, so it's not very impressive, but still, I am happy that it works!! OK, let's see if I can put an IFRAME in here to show the app (obviously, you'll need to install Silverlight to see it): </body></html>&
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

ReMix 07 in Zurich with Scott Guthrie

Today, the ReMix 07 event is taking place in the World Trade Center in Zurich, Switzerland. Lots of great speaker, includign Scott Guthrie, Wayne Smith, Beau Ambur and more. Wayne Smith just showed his video encoding and XAML editing demo, pretty much the same demo as in Vegas, but very well received here anyway! You got to love his accent :) but more important, the content is great. One new thing presented today compared to the Las Vegas edition is a new plug-in for LiveWriter which allows embedding...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

ReMix Zurich tomorrow

ReMix 07 Zurich I will be attending ReMix in Zurich tomorrow. This event will be specially interesting this year due to the presence of Scott Guthrie for the keynote and 2 presentations. I'll hear even more of Scott in the evening, at the DotMugs (.NET Managed User Group of Switzerland) where he will be speaking about ASP.NET and Orcas. I am very happy to hear Scott again, this will be the thrid time (after MIX06 and MIX07), and I sure hope I will have many more occasions...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Road to Silverlight: Aaron Stebner is a great person!!

After I posted about the problems I was encountering with the Silverlight installation, Microsoft's Aaron Stebner contacted me and offered his help. Aaron is a .NET setup specialist. After enabling verbose logging and his inspecting my setup log files, the answer was to uninstall .NET 2.0 and then reinstall 3.5. Unfortunately, my .NET 2.0 installation was apparently corrupted, because the framework didn't appear in the "Add/Remove program" dialog. Thankfully, removing corrupted .NET installations...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Road to Silverlight: A few bumps...

You got to love this delicious alpha feeling, when you try to install something and it fails with an non-understandable error message... Yum!! In my case, installing Orcas fails. I managed to find out that the package responsible for the failure is the .NET 3.5 redistributable. While the error code is just a generic "error 1603", looking in the Windows Event Viewer shows that "Product: Microsoft .NET Framework 3.5 (Pre-Release Version) -- You must first install Microsoft .NET Framework 2.0SP1 before...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

On the road to Silverlight: Download...

Now that my site has been cleaned up, I want to add Silverlight content to it soon. I blogged about my plans here, and first of all I need to download all the development environment. That also includes Orcas (Visual Studio 2007) which is currently still in Beta. I didn't install it before because Microsoft told us that it was a bad idea to install it on a non-virtual machine, and that uninstalling it was very difficult. Since the last Beta 1 version, however, things are better and I have been told...
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati