JoelBlogs - Joel Jeffery's Microsoft 365 Blog

Microsoft 365, SharePoint, Teams and Office 365 Architecture, Development, Administration and Training

  • Home
    • Sitemap
  • Articles
    • #SPThingADay
    • SharePoint Online
      • SharePoint Online – Drag and Drop and Large File Uploads
    • SharePoint 2016
    • SharePoint 2013
      • Content Database Changes to the AllUserData Table
    • SharePoint 2010
      • Administration
        • Disable CRL Checking
        • Excel 2010 & PowerPivot
        • Limits & Thresholds
        • PeoplePicker AD Errors
        • Recycle Bin Behaviour
        • Renaming a Server
        • Service Pack 1
        • Unattended Installs
        • Uninstall All SharePoint 2010 Solutions via PowerShell
        • User Alert Management
        • Virtualised SharePoint
        • Visio Stencils for Administrators
      • Development
        • Audience Membership Workflow Activity
        • Base Types, Lists & Content Types
        • BCS & Offline Sync
        • Debugger Skipping Lines
        • Development Laptop Spec
        • Enabling JavaScript IntelliSense
        • Event Receivers & Deployment Jobs
        • FavIcons & SPUrl
        • Google Maps Sandbox Web Part
        • Group By Content Type for List Views
        • Locale Stapler / Master or Default Locale
        • Removing Default Editor Parts
        • Sandbox Embedding Resources
        • Solution Sandbox Introduction
        • SPPersistedObject
        • Restoring Deleted SPSites in SP1
        • SPWebConfigModification 1
        • SPWebConfigModification 2
        • STSADM copyappbincontent vs. Install-SPApplicationContent
        • Workflows for Beginners
        • Workflow InitiationData Seralizer
    • SharePoint 2007
      • Alternate Access Mappings
      • Excel Services
      • Excel Services UDFs & Excel Client 2007
      • Experiences from the Field
      • InfoPath & Forms Server
      • Kerberos & SSRS
      • Records Management
      • Web Application Service
      • WSS vs MOSS
  • Training
    • SharePoint Admin Links
  • Downloads
    • Summary Slides for PowerPoint
    • CodePlex Projects
      • Audience Membership Workflow Activity
      • Google Maps Sandbox Web Part
      • Group By Content Type in List Views
      • Locale Stapler / Master or Default Locale
      • SharePoint Outlook Connector
  • Hire Me!
    • MCP Transcript
    • Résumé/CV

Windows 7 Applications with WPF, C# and MFC/C++

July 21, 2010 by Joel Jeffery

Since managed code made its appearance about a decade ago, I’ve not touched MFC or C++. For business applications or just for applications that look great, writing code in MFC/C++ seemed to be doing things the hard way. A few weeks ago at a TechDays event, I got the chance to see that the unmanaged code world hasn’t been standing still either.

We’ve had Windows Presentation Foundation and Silverlight for a few iterations now. Windows 7 comes with even more of these APIs as standard, which you can use to give your applications the distinctive Windows 7 look and feel.

Whilst managed languages in .NET have had excellent support for developing shiny applications for a while (Paint.NET is a great example of this, go ahead and download the Paint.NET source code!), unmanaged C++ and MFC has lagged behind in the tools department for too long.

Visual Studio 2010 changes this.

If you’re a C#, WPF or Silverlight developer, then you’ll be anxiously awaiting the WPF 4.0 Windows 7 and Office Ribbon Control, which is not yet released. Scott Guthrie as a long-standing article on the out-of-band WPF 4.0 controls package.

At a Microsoft TechDays UK event at Reading last month, Jason Zander the Visual Studio 2010 general manager, went through many of the new features in the platform.

In the video below, Jason walks through the steps to upgrade an old MFC application, with a distinctly 1990’s feel, to use the up-to-date look and feel of Windows 7.

There’s a lot of copy and paste of MFC and C++ code in this video. Looking at all the steps MFC and C++ guys have to go through, I’m quite happy my C++ days are over. Even though there’s a lot more help for C++ in the IDE these days, it’s still seems a very pedestrian way of cutting code. At least you’ve got Ctrl-Comma to launch Intellisense in the IDE.

MFC Class Wizard

One feature missing that was removed in the 2008 release of Visual Studio was the MFC class wizard, so you can’t say they don’t listen!

Jason also shows how you can access some of the animation subsytem in unmanaged code. This is so much easier in WPF and C#.

The nice people at VivaMind have build this splendid WPF sample to show the tree of WPF documentation samples available on MSDN.

Click on the image below to install Microsoft Silverlight 4.0 and have interactive experience.Mind web of MSDN Documentation samples. Source: http://code.msdn.microsoft.com/wpfsamples

Filed Under: Development Tagged With: C#, MFC, Videos, Visual Studio 2010, WPF

Joel is a full-stack cloud architect who codes. He is a Microsoft Certified SharePoint Online, SharePoint Server and Azure specialist and Microsoft Certified Trainer.
He has over 20 years' experience with SharePoint and the Microsoft .NET Framework.
He's also co-founder of Microsoft Gold Partner JFDI Consulting Ltd. Read More…

Recent Posts

  • Microsoft Flow Tip #1 – Word Templates and Hiding Empty Repeating Sections
  • SharePoint PowerShell Tip #1 – Select-Object and FieldValues
  • Popular Misconceptions – Microsoft Teams relationship with SharePoint
  • Course: Microsoft 365 Certified Teamwork Administrator
  • Audience Targeted Searches in Modern SharePoint Online
MCT 2020-2021
Microsoft Teamwork Administrator Associate
Joel's Acclaim Profile
Joel's Microsoft Profile

Tags

Administration Architecture Certification Cloud Development freetraining Information Architecture intranets MCP Microsoft Microsoft Architecture Microsoft Azure microsoftsharepoint migration Mobile Development MOSS Office 365 office365 Office 365 Permissions PowerShell SaaS SharePoint SharePoint 2010 SharePoint 2010 Training SharePoint 2013 SharePoint Administration SharePoint Administrator SharePoint Architecture SharePoint Developer SharePoint Development sharepointia SharePoint Online sharepointonline SharePoint Search SharePoint Training SharePoint Videos Silverlight SOA SPThingADay TechEd 2007 Training Videos Windows Phone 7 WSS

Copyright © 2022 Joel Jeffery, SharePoint Architect