.NET 3.5

Everything related to .NET 3.5 (and above): WPF,Silverlight, LINQ, etc...

MVVM Light V4.1.27.0 in Nuget

I just pushed a new version of MVVM Light to Nuget. The new version is 4.1.27.0. The difference towards the previous version (4.1.26.1) and this one is that I am not depending on the CommonServiceLocator Nuget package instead of providing my own.

Read the rest of this entry »

MVVM Light V4.1.26 change log

I just published the change log for MVVM Light V4.1.26, which is available on Nuget only at this time. The full version is available here, while the “libraries only” version is available here. I am working on an installer which will also add a few more changes to the templates and one bug fix in the code snippets. Stay tuned for that installer as soon as I figure a few things out. Important note: V4.1.26 is only available on Nuget (here and here) at the current time. An installer will be published ......

MVVM Light V4.1 with support for Windows Phone 8

Today is a very exciting day: After the official release of Windows 8 (and Microsoft Surface!) on Friday, and the official release of Windows Phone 8 on Monday, the Build conference is starting! This is the conference in which we will learn all about the developer experience for Windows 8 and Windows Phone 8. As a partner of Microsoft, I had the privilege of trying out some of the new things early, and this gave me the opportunity to port MVVM Light to Windows Phone 8 (it was already running for ......

#mvvmlight V4 update for Win8 RTM

With Windows 8 RTM out of the doors (at least for some of us), it was also time to create an update to MVVM Light. I selected the V4 RTM to do this (V4.0.23).This RTM version was released a few weeks ago with no much bells and whistles because I was just too busy to write much about it. Now after some vacation, I will resume blogging on all my favorite topics including of course MVVM Light. Read the rest of this entry » ......

#mvvmlight V4RC available on #nuget

I just published the MVVM Light V4 RC packages to Nuget. Note that this is still technically a preview, so the main package is still V3. The V4 packages are available here:

Read the rest of this entry »

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.

Read the rest of this entry »

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 ......

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

I just pushed two big updates to MVVM Light setup components.

Read the rest of this entry »

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! Read the rest of this entry » ......

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. Read the rest of this entry » ......

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”. Read the rest of ......

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.

Read the rest of this entry »

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 ......

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 ......

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.

Read the rest of this entry »

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. Read the rest of this entry » ......

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.

Read the rest of this entry »

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!

Read the rest of this entry »

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. Read the rest of this entry » ......

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 ......

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. Read the rest of this entry » ......

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:

Read the rest of this entry »

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. Read the rest of this entry » ......

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”. Read the rest of this entry » ......

Sample code for my #mix10 talk online

I just saw that the video for my MIX10 session is online already! Impressive work, MIX10 team. I also published the sample code on my web server, so here are the links:

Read the rest of this entry »

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:

Read the rest of this entry »

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! Read the rest of this entry » ......

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), ......

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. Read the rest of this entry » ......

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.

Read the rest of this entry »

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. Read the ......

Talking in Las Vegas: MIX2010 and MVVM

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. Read the rest of this entry » ......

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. Read the rest of this entry » ......

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 ......

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. Read the rest of this entry » ......

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). Read the rest of this entry » ......

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 ;) Read the rest of this entry » ......

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! Read the rest of this entry » ......

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. Read the rest of this entry » ......

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 ......

Going to Berlin (TechEd Europe)

I will make a short appearance at Tech Ed Europe. Due to the amount of work we have right now, I cannot spend more than a couple of days in Berlin, but I still hope to meet many of you all. Read the rest of this entry » ......

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 ......

Quick tip: Snooping WPF application with elevated permissions

Here is a quick tip: If you want to use Snoop on a WPF application running with elevated permissions, you need to run Snoop with elevated permissions too, or else your application will not appear in the application’s list displayed by Snoop. Thankfully, it is really easy to run Snoop in elevated mode in Windows 7: Read the rest of this entry » ......

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.

Read the rest of this entry »

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. Read the rest of this entry » ......

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!! Read the rest of this entry » ......

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/

Read the rest of this entry »

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, ......

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 ;)) Read the rest of this entry » ......

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:

Read the rest of this entry »

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.

Read the rest of this entry »

Installing the MVVM Light Toolkit

I just published a new version of the MVVM Light Toolkit.

Read the rest of this entry »

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).

Read the rest of this entry »

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). Read the rest of this entry » ......

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 :) Read the rest of this entry » ......

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. Read the rest of this entry » ......

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.

Read the rest of this entry »

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). Read the rest of this entry » ......

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!!

Read the rest of this entry »

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.

Read the rest of this entry »

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.

Read the rest of this entry »

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

Read the rest of this entry »

The #techdays presentations screencasts are online (French and German)

And now the German version of the session is online too. Read the rest of this entry » ......

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. Read the rest of this entry » ......

The #techdays presentations screencasts are online (French only)

Update: The German version of the presentation is online too.

I was just notified that the screencast for the session I gave at TechDays in Geneva a few weeks ago is now online.

Read the rest of this entry »

Posting the source code for #techdays (Switzerland) talks

Update: I updated the installation instructions to make it clearer that you need the WPF toolkit and SQL Server express before you can run the application. TechDays Switzerland is always a very nice venue, and this year in Geneva and in Bern were no exceptions. For me it was a special occasion, because I gave the same talk in French in Geneva, and in German in Bern, and I had never done this before. I think it went well. Altogether approximately 450 people saw this talk. I think I will possibly reuse ......

Using a Behavior to magnify your WPF applications

At MIX 2009, the Expression Blend team cam up with a new concept called Behaviors. In fact, the only thing new is the way that the Behaviors are packed. WPF developers have been doing what we called "Attached Behaviors" for quite some time already: see this thread (dated July 2008) to read a discussion around this topic at the WPF Disciples group. Read the rest of this entry » ......

Two days FREE training: WPF LOB

Get some of that: Microsoft's Jaime Rodriguez and Karl Shifflett are on tour and will come to a number of locations to give a two days training packed with WPF training for building Line of Business (LOB) applications.

Read the rest of this entry »

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.

Read the rest of this entry »

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: Read the rest of this entry » ......

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.

Read the rest of this entry »

IdentityMine releases Gesture Engine for advanced multitouch development

Multitouch is going to be the next big thing. Natural User Interfaces (NUI) are going to change the way we use client applications soon. You think it's not true? See the iPhone hype. This is not a very good phone, feature wise. It is lacking very basic features. But being able to control your phone using multiple fingers was a real killer feature. Read the rest of this entry » ......

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. ......

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. Read the rest of this entry » ......

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. :) Read the rest of this entry » ......

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 ......

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...) Read the ......

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. Read the rest of this entry » ......

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. Read the rest of this entry » ......

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 :)

Read the rest of this entry »

One more talk: Geneva TechDays, 1st and 2nd of April 2009

Just got confirmation that I will also be talking in Geneva, Switzerland, at the TechDays 2009 (1st or 2nd of April 2009). The talk will be the same as in the TechDays in Bern, but this time it will be given in French. I never really gave a technical talk in French, so it should be interesting (I hope the material will be more interesting than me struggling with technical words in French, though, just kidding). Read the rest of this entry » ......

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!! Read the rest of this entry » ......

My MIX 10K entry

A few days ago I decided to enter the MIX 10K competition.

Read the rest of this entry »

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. Read the rest of this entry » ......

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.

Read the rest of this entry »

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 ......

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.

Read the rest of this entry »

#PDC08 talk: WPF pixel shaders and WPF graphics future

David Teitlebaum. Why move to a new effect system? Old effect system: BitmapEffects. Talks about what was done with BitmapEffects to render to the screen. Doesn't play well with remoting, because too slow to render on target machine, go back to display machine, etc... Shows the old syntax for BitmapEffect. Software rendered, very slow, especially blur operations (such a glow, drop shadow, etc...) Actions: In SP1, they are marked as obsolete. Implemented HW acceleration for BlurBitmapEffect and DropShadowBitmapEffect ......

#PDC08 talk: Microsoft .NET, CLR Futures

Joshua Goodman

Joshua recaps the history and structure of .NET. Then talks about the difficulty to keep code compatible. Sometimes, making code faster creates bugs, because the previous slowness was enabling scenarios that speed doesn't. Of course the CLR gets blamed even though it's not their fault!

Read the rest of this entry »

#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).

Read the rest of this entry »

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! Read the rest of this entry » ......

#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++.

Read the rest of this entry »

#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.

Read the rest of this entry »

#PDC08 Talk: Developing for Microsoft Surface

After CLI (Command Line Interface) and GUI, Surface is a NUI (Natural User Interface). Challenges: Multi-user. Multi-Touch. Direct Interaction. Object Recognition. Presenting existing applications developed for Surface: ATT with an application allowing to visualize the coverage for a mobile. Bars such as Harrah with applications for social interaction. Sheraton has Surfaces in the lobby to encourage people to interact. Read the rest of this entry » ......

#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. Read the rest of this entry » ......

#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.

Read the rest of this entry »

#PDC08 pre conference: WPF Code and Concepts by Charles Petzold

According to Charles Petzold, WPF is the main platform for Windows programming nowadays. The only reason why one might still want to program WinForms is if you want the app to run on a maximum of machines. Read the rest of this entry » ......

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.

Read the rest of this entry »

Silverlight 2 Unleashed Online Content

There is a lot of online content available for Silverlight 2 Unleashed!

Read the rest of this entry »

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!!

Read the rest of this entry »

Redesigning my website with the help of Expression Blend

I decided to completely redesign my website www.galasoft.ch (yes, it's about time, I know). For this process, I decided to inspire myself (loosely) from my good friend Robby Ingebretsen's site, which is both simple and beautiful. Read the rest of this entry » ......

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...

Read the rest of this entry »

Converting and customizing XAML to PNG with server-side WPF

One Tweet by Oliver Sturm (http://twitter.com/olivers) the other day got me to thinking. He was asking about the possibility to host graphics for a web site in XAML format, and the best way to render it.

Read the rest of this entry »

Microsoft to add jQuery in Visual Studio: Why I think it's great

The news took the community by surprise and the reactions are overwhelmingly positive: Microsoft is going to ship jQuery with the ASP.NET MVC framework (very soon) and with Visual Studio (in a near future). For more details, ScottGu and Scott Hanselman are talking about that in a very complete way. Read the rest of this entry » ......

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. Read the rest of this entry » ......

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 :) Read the rest of this entry » ......

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. Read the rest of this entry » ......

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 :)

Read the rest of this entry »

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 ......

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!

Read the rest of this entry »

Microsoft, you're kidding me, right??

You got to be kidding me. What if I want Expression in the US locale, I can't buy it just because my IP is not in the US? Honestly? You are *that* stupid?

Read the rest of this entry »

My talk at the "Internet Briefing RIA conference" in Zurich

I just posted today's talk at the RIA conference in the World Trade Center, Zurich. Unfortunately it was not recorded, but the slides and the demos' source code is available on my site.

Read the rest of this entry »

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 ......

WPF: ListView/GridView minimum and maximum width for a column

A WPF ListView is a possible replacement for a datagrid, when it doesn't have to support advanced features like grouping or filtering of rows. If you use a ListView in your WPF application, and set the "View" property of this ListView to be a GridView. A ListView/GridView even supports features like reordering and resizing columns. Unfortunately, it is not possible to define a minimum or maximum width for the columns. Fortunately, it is not really to do this in the code behind. Let's see how. First ......

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

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!

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 :)

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".

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

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 ......

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 ......

I am now a Microsoft Certified Professional

What a crazy week that is. I am currently in Seattle for the Microsoft Most Valuable Professional summit, which ended yesterday. I took an additional day in Seattle to meet a few friends and Siemens colleagues, and this morning got an email notifying me that I passed the MCTS exam about WPF that I took back then in December. Because the exam was in beta stage when I took it, Microsoft needed a veeeeeeeery long time to evaluate the replies and check if I met the requirement. Apparently, they also ......

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 ......

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 ......

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 ......

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... ......

TechDays 2008: Slides and Code of my presentation available online

The slides and demo source code of my presentation at TechDays last week are available online. You will find: Slides (Powerpoint 2007) Source code (Visual Studio 2008 C#) Download page I hope that these documents will help you in your "quest for WPF". Let me know if you have questions or comments through the blog ......

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 ......

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 ......

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 ......

TechDays 08: My talk next Thursday in Basel, Switzerland

Next week, on Wednesday the 19th and Thursday the 20th of March, the TechDays Switzerland will take place in the St. Jakobshalle in Basel. Apprently, it's sold out and they expect around 2300 people in 5 parallel tracks. Now that's kind of making me nervous, because I will be presenting a session on Thursday the 20th at 9AM!. It's not the first time I'll be talking at a conference, but it's certainly the first time that so many people will attend, so... kind of nervous here : The talk is called "Siemens ......

#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 ......

#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 ......

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 ......

#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 ......

#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 ......

#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" :) ......

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

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 :) ......

#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 ......

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 :) ......

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 ......

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 ......

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 ......

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 ......

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, ......

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! ......

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 ......

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!!

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 ......

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... ......

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 ......

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 ......

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 ......

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 ......

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 ......

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 ......

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 ......

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 :)

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: ......

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.

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 ......

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 ......

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(); ......

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" ......

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. ......

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 ......

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 ......

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 ......

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 ......

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, ......

Blend: New version with complete Style properties

Blend December CTP was released a short time ago. Included in this new version is one change that I'd been requesting from Microsoft, and I am really happy they made it: You can now select every properties of a given element when you edit them in a style. In the previous version, some properties were hidden, for some reason, and you could only set them using the XAML editor. At least Width and Height were not visible in the properties pane, and maybe more. In the December CTP, this small defect is ......

Back in Switzerland after a WPF design week

This time it's for good: I am back in Switzerland and I am not flying again before next year. Which is in 2 weeks. :-) The week has been amazing. While the team continued developing UI in Switzerland, I went to coach the graphics designers in Princeton. In a week, we didn't "only" create XAML assets, but we also discussed the overall design and we are starting to have a very good idea of how the application is going tolook like eventually. It's so great to be able to reproduce the static screens ......

LINQ training and trip to Princeton, NJ, USA and Swiss elections

LINQ hands-on lab at Microsoft Switzerland Yesterday, a colleague and I attended a free LINQ hands-on lab given by Microsoft Switzerland in their offices of Wallisellen near Zurich. It was really good. I have seen LINQ in action a few times this year (actually, I had it demonstrated by no less than Anders Hejlsberg himself on one occasion, and Scott Guthrie on the other) but I had never tried writing queries myself. It was a good, 4 hours occasion to try it by myself. Needless to say, I was really ......