Over the years, this blog has been about many different things related to software development with Microsoft technologies. Since my current role focuses on PowerApps & Flow, that's what it's primarily about right now.
“The Vernon Hills Police Department wanted to support the work of its field officers by installing in-vehicle video recording systems in police cars. After evaluating available solutions, the department chose the Mobile Video Platform from Modularis, in conjunction with the Windows 7 operating system and the Windows Azure cloud computing platform. The solution has saved the city money and has become an invaluable job tool for field officers.”
Not called out specifically in the case study, but the application running in the police cars is a WPF app.
The System.ComponentModel.DataAnnotations namespace was introduce in the .NET Framework 3.5 SP1 to support ASP.NET Dynamic Data. Silverlight + WCF RIA Services now uses it as well. I’ve been asked by a few people when WPF will use it. Why wait? Karl Shifflett has a sample of how to do it here:
This video is part of a series of videos Karl has covering his Stuff sample application. Stuff is a sample application Karl put together to demonstrate “WPF Line of Business using MVVM” . It’s definitely worth checking out:
“The APIs in WPF4 plus the Surface Toolkit for Windows Touch make building common touch scenarios easy. However, implementing many of the same touch scenarios using WPF3.5SP1 or Silverlight 3/4 involves writing a fair bit more code. Furthermore, the touch APIs across WPF4, WPF3.5SP1, and Silverlight are different.
The goal of this project is to simplify building common touch scenarios when using WPF 3.5 SP1 or Silverlight 3/4 by using Expression Blend Behaviors to provide a consistent way to implement these scenarios across WPF & Silverlight. Expression Blend Behaviors can be used within Visual Studio without a dependency on Expression Blend by downloading the Expression Blend 3 SDK. You can also find more Expression Blend Behaviors at http://expressionblend.codeplex.com/ and http://tinyurl.com/ExpressionGalleryBehaviors.
I’ve been meaning to record this screencast for a LONG time. Well, I have a presentation on MEF tomorrow. I was originally planning on demonstrating this sample, but realized that I won’t have enough time. However, I needed to be able to point the audience to an explanation of this sample as a follow on. Nothing like a forcing function to get you to do something you’ve been planning on for ages;)!
In this screencast, I highlight some tips and tricks for improving perceived startup performance of Windows Presentation Foundation (WPF) applications using the Managed Extensibility Framework (MEF) and a Splash Screen. The walkthrough focuses on using the .NET Framework 4.0. However, MEF is available for WPF 3.5 SP1 as well at http://mef.codeplex.com.
Title: Microsoft Developer Dinner: Hands-on Natural User Interfaces: Multi-touch development with Silverlight and WPF 4
Description: The Natural User Interface (NUI) is the next revolution of human-computer interaction. Microsoft Surface has shown the potential of multi-touch NUIs to uniquely engage users, and multi-touch tablets and displays are becoming more and more common. This talk is focused on how you can create multi-touch NUIs for these devices. You will learn the difference between manipulations and gestures, when to use each, and how to implement specific NUI design concepts with both Silverlight and the WPF 4 Touch API. The differences between the Silverlight and WPF 4 Touch APIs will be highlighted. You will hear about the roles of the Surface Toolkit for Windows Touch and the Microsoft Surface Manipulations and Inertia Sample for Silverlight and how you can use them to jump-start your applications. The open-source multi-touch Bing Maps 3-D WPF control, InfoStrat.VE, will also be demonstrated. If you are interested in rich, engaging multi-touch interfaces for the web or client, then you need to attend this talk!
One of the things I have been trying to do this year is encourage / kick start partners to create useful CodePlex projects. I’ve been digging into Windows 7 multi-touch since it was announced at PDC08. As the managed (.NET) APIs available for WPF 3.5 SP1, Silverlight, and WPF 4 started to materialize, it became clear that there were varying levels of developer productivity for building multi-touch solutions. The eventual release of the WPF 4 + the Surface Toolkit for Windows Touch clearly sets the bar for developer productivity thanks to all the great SDK work that was born out of Microsoft Surface. So I started thinking, “What about Silverlight 3/4 & WPF 3.5 SP1 developers?” There are all sorts of reasons why people will end up choosing those platforms. So I thought “There has to be a way to make common touch scenarios easier for them so they don’t have to write the same plumbing code over and over again.” Enter CodePlex and Expression Blend Behaviors. I started talking to my buddy James Chittenden who is the User Experience Evangelist (UXE) on my team. I floated this idea of simplifying common touch scenarios when using WPF 3.5 SP1 or Silverlight 3/4. The general idea was to start a CodePlex project that used Expression Blend Behaviors to provide a consistent way to implement common touch scenarios across WPF & Silverlight. We both agreed we should try to make it happen. James suggested we contact Joseph Juhnke, President & CEO of Tanagram Partners, about the idea. Joseph loved the idea. We all put our heads together and decided to start small with two common multi-touch scenarios that were fairly laborious to implement from scratch in both WPF 3.5 SP1 and Silverlight 3/4. From there, Tanagram Partners cranked away at building them out. I’m excited to announce that their CodePlex project has gone live:
UPDATE (2/27/2010): I uploaded a newer version of the sample. I fixed some bugs and added support for loading a ResourceDictionary using MEF. I will be recording a Ch. 9 screencast soon.
I keep on finding all sorts of fun and interesting uses for MEF. I just threw together a sample for a customer showing how to use a splash screen + MEF to follow the “Make the application main window appear as soon as the user double-click on the application’s icon, when possible perform do all other initialization after.” principle describe here:
Would you like to build an app like this yourself? Thanks to InfoStrat.VE, you can! Josh Blake just announced the R2 release of InfoStrat.VE. Amongst other improvements, it includes support for the same touch interaction on Windows 7 you have available in the Microsoft Surface Globe app. Full details on Josh’s blog: