When I started learning programming with the .NET framework, I started by using WinForms as a UI technology. It uses “classic” menus just like this office 2000: office 2000 user interface A few years later Office 2007 was released, the ribbon was born: office 2007 user interface And even some years later Office 2010 was released, which also added new features like the stage:office 2010 user interface A few days ago Office 15 preview was released and they added more fancy new stuff: office 15 user interface That's huge progress IMO, but why don’t they enable the developers to build UI’s like them? When I have a look at .NET, there’s still no way to build a ribbon. Even with WPF, which is highly extensible, there are no premade controls. So the community has started several projects to create all those "features". I know, today Microsoft has released a ribbon for WinForms and WPF, but that's still not part of any core framework (not even the 4.5 one). But this is not limited to .NET as far as I know? Today there are still no APIs for unmanaged applications to create those ribbon UI’s?!

In Germany they are offering free UX training to make sure everything fits their style! http://j.mp/NZGgH9

Why doesn’t Microsoft give the cool stuff to us developers? Do they want their applications to be unique?

  • For the same reason why Google+ has 3-level menus in Android, I guess
    – superM
    Commented Jul 19, 2012 at 14:23
  • 7
    Perhaps it's not a part of their core libraries (the core .NET team never developed these controls), and they have a separate team of developers building the Ribbon controls on top of the base .NET controls. If it's not a part of the core, why would they have to release it? Maybe it would be nice, but are they required to be nice? Commented Jul 19, 2012 at 14:28
  • They are offering so mutch stuff to get the UX right for Windows 8! j.mp/NZGgH9 Commented Jul 19, 2012 at 14:38
  • 1
    @FrustratedWithFormsDesigner: Sounds right. Microsoft is a big company and has problems keeping focus.
    – MSalters
    Commented Jul 20, 2012 at 9:32
  • Perhaps you should consider changing the accepted answer, as mine makes no sense. I did not know about Microsoft UI Licensing. Jeffry Coffin's answer is better. Commented Sep 12, 2012 at 15:06

3 Answers 3


They have released a UI framework that supports ribbons -- it's just supported in MFC instead of .NET.

There's probably room for quite a bit of debate as to why they did things that way, but it is what they did anyway.

It looks like Metro-style apps will be supported much more universally -- not only C++, but also C#, VB, and Javascript are supported, if I'm not mistaken.

  • 2
    They are completely different groups with different goals and focuses. Office is built off an enormous existing code base that would be needlessly slowed down by the transition to managed code, so it is not surprising the tool matches what they write in.
    – Guvante
    Commented Jul 19, 2012 at 22:26

They do release some of these things.

Here's the Ribbon, usable in a .NET application.

And here's Metro, which you can program against using WPF/XAML or HTML/JavaScript.


Metro style app development in Visual Studio is supported only on Windows 8 Release Preview. Windows 7 is not supported.

  • I was talking about the metro style Windows for the desktop environment, wich contain a chromess window, other minimize, maximize and Close Buttons etc. The ribbon was released very long after office2010 was released, I was asking about they never release those things WITH their new Office or Visual Studio Commented Jul 19, 2012 at 18:39
  • There was a ribbon control released way earlier than Office 2010. There was one that came out as part of the WPF Toolkit in 2008. That's how they release out-of-band updates for things like UI widgets. The Windows metro stuff is in VS 2012, which has been widely distributed. Commented Jul 19, 2012 at 19:50
  • This appears to be the blog post introducing the WPF Ribbon. I don't know why they didn't release it in 2007 along with Office. But WPF itself was still fairly new then. It may be that the ribbon they use in Office isn't precisely the same as the WPF one, so they had to come up with something comparable. As for Metro, it's pretty new.
    – Kyralessa
    Commented Jul 19, 2012 at 20:54

Historically, Microsoft has always provided developers with tools to create standard Windows applications (MFC, WinForms, WPF).

The problem here is that Office is being developed by a different group than the one that provides developer tools & frameworks. This means that when the Office group creates something like the Ribbon or Backstage, the Developer Tools group needs to play catch-up to create a reusable control to provide the functionality.

I also believe there was in-fighting between the two groups that caused such a long delay in the Ribbon being available. My guess is that the Office group wanted to keep the Ribbon unique to the Office applications and the Developer Tools group wanted to make it available for everyone to use.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.