MEF in the Wild: A Retrospective

After having worked on several major projects that integrated the Managed Extensibility Framework, I thought it might be beneficial to share a retrospective on how it was used what value it provided. These are all ways MEF helped my team build modular Silverlight applications. Unlike my earlier post that covered 10 Reasons to use the…

Intro to MVVM: Slides and Sample Code

Thanks to everyone who joined me last night for my presentation about Model-View-ViewModel for the Atlanta Silverlight Meetup group. I enjoyed it and appreciate you sticking through the heat (pardon the pun). As promised, I’ve uploaded both the slide deck and the code that I demonstrated for you to work with. Click here to download…

Integrating your Application’s Threading Model with the Asynchronous Programming Model

In version 2.0 of the .NET Framework, Microsoft introduced the System.Threading. SynchronizationContext class. Simply stated, a SynchronizationContext-derived object connects an application model to its threading model. The FCL defines several classes derived from SynchronizationContext, but usually you will not deal directly with these classes; in fact, many of them are not publicly exposed or documented.…

Windows Phone 7 Developer Tools RTM, etc.

With all due respect to Steve Martin, “The new phone tools are here!  The new phone tools are here!” Following up on my recent presentations introducing development for Windows Phone 7 with Silverlight, the release of the RTM version of the Windows Phone 7 to the public today was announced today, along with a couple…

Best Practices for Themes in Modular Silverlight Applications

When building large Silverlight applications, it makes sense to build sets of styles that can be shared across the application. Many examples on the web illustrate placing these in the App.xaml file and then you are off to the races. Unfortunately, when you are building modular applications, it’s not that simple. The dependent modules still…

Vermont Code Camp 2010 Presentation Materials

Julie Lerman and her team have once again put on a terrific event at the 2010 Vermont Code Camp.  The host team’s terrific hospitality as well as the great facilities provided by the University of Vermont made this an extremely enjoyable event to attend and present at. I have uploaded the content from my talk…

What Is Different between the OS’s on Two Machines?

Don’t you love it when your application works on one machine, but not the other? We were running into this exact issue with a client and needed to see what was different between the operating systems on two machines. Thinking that the issue might have been a problem that got fixed in a hotfix/service pack,…

Want a free copy of Visual Studio 2010 Ultimate with a full MSDN Subscription?

Do you want all that IntelliTrace goodness as well as all the OS/Tools that MSDN offers? For free? Of course you do! Head over to Wintellect’s Marketing Director Bethany Vananda’s blog (https://training.atmosera.com/CS/blogs/bvananda/archive/2010/09/09/devscovery-sponsor-thank-you-wintellect-contest-join-the-fun-win-prizes.aspx) for all the details. Best of luck to you!

Design-Time Friendly ViewModels with MEF

The Managed Extensibility Framework (MEF) is a very powerful tool for building modular, extensible Silverlight applications. If you’ve followed this blog, you’ll know that it is not just for applications that anticipate plug-ins, but can be used as an inversion of control container, can facilitate region management, and much more. In preparing the material for…

Autofocus Nested Textboxes with Rx in Silverlight

The Problem A common UI pattern is to expose text in a read-only container, then swap it for an editable input box based on a command. There are multiple approaches to doing this (including just changing the style of the same container). Swapping between a read-only TextBlock to a TextBox is easy enough, but what…

Using AppDomains to make Non-Threadsafe code Threadsafe

Recently, I was involved in a Wintellect consulting engagement where a customer had some class library code that was created years ago. The code in this class library was not designed to work well in a multithreaded environment. Specifically, this means that if two or more threads called into the class library code at the…

Hello, MEF for Silverlight Quickstart

Published another quickstart. This is an introductory quickstart for the Managed Extensibility Framework, and is similar to the previous one except that it is specific to Silverlight. You can take a look at the article and watch the short video by clicking here.