It’s been such a long time.. [WPF + Windows 7]

Microsoft has released the API code pack including Windows 7 support — get it here:

Well, it’s been a while since I posted anything, I’m sorry!

I’ve been busy working with Windows 7 and Microsoft Surface touch-computing. To that end, I needed to get access to some of the new Windows 7 APIs in managed code … which isn’t supported yet (but is coming).

So I built an interop library to access:

  • Scenic Ribbon (native Win32 ribbon) in Windows Forms
  •  Native WM_TOUCH and WM_GESTURE messages
  •  Sensor API
  •  Shell APIs (jump lists, thumbnail buttons, libraries)

One note: I make no guarantee that everything is correct (it’s hard to do that on a shifting beta with minimal docs, but in addition I’m not sure I’ve gotten 100% coverage with everything anyway).

Here’s the interop library with source code:

Windows 7 Beta 1 Interop Library for .NET 2.0

I’ll be posting more details and samples a bit later, here’s a couple to get you started.

Here’s a simple example of using the Scenic Ribbon and native touch support to create a (very) simple Windows Forms finger
 paint program:


Multi Touch example with Windows Forms

Here’s a simple example of using the gestures and library support in a WPF application. It grabs all the directories in your Pictures Library and then shows you each picture and lets you use the swipe gesture to move between then, pinch to scale and of course, rotate.


Gesture example with WPF

Both of these samples work with the HP Touchmate (and multi-touch drivers) and Windows 7 Beta 1.

Have fun!


About Mark Smith

Windows systems developer with low-level operating system, threading and .NET experience. For the past several years I have been involved with WPF/Silverlight and most recently iOS and Android. I have worked as an architect and designer for several companies and am particularly interested in client/server and graphical solutions. Specialties:.NET, WPF, Silverlight, Windows, iOS

Latest Blog Posts

Building Windows Store apps with HTML/JS and WinJS

Thanks to everyone who attended the WinJS marathon! Here's the slides and demos we … Read More »

NumericTextBoxBehavior for XAML-based Windows Store Applications

One of the first (and arguably most useful) behaviors that I wrote for MVVMHelpers was a … Read More »