Welcome to Pete Brown's 10rem.net

First time here? If you are a developer or are interested in Microsoft tools and technology, please consider subscribing to the latest posts.

You may also be interested in my blog archives, the articles section, or some of my lab projects such as the C64 emulator written in Silverlight.

(hide this)

WPF Ribbon October Release

Pete Brown - 22 October 2010

The WPF Ribbon team has been busy since the first release in August. Today we released an update to the ribbon that addresses a number of issues with the first release, and enables support for the ribbon under the Visual Studio Express SKUs.

Your feedback on my blog, the forums, and other places was critical to determining what would go into this release. Thank you!

Download the WPF Ribbon

Ribbon Control Updates

Straight from the update details document, here's what was updated in this version:

  • Ribbon Split Button is only half-highlighted when users mouse over the button
  • Ribbon Title is bottom-aligned, should be centered
  • Ribbon Quick Access Toolbar icons are clipped and top-aligned
  • Ribbon Contextual Tab header text is getting truncated if too long
  • Ribbon Gallery  Item does not stretch to fit its Parent Panel
  • Initial enabled state of Ribbon Split Menu Items can be incorrect if they have children
  • Ribbon Split Menu Item with sub-items is disabled if CanExecute=false
  • WPF Ribbon Dropdown does not close when CanAddToQuickAccessToolBarDirectly="False" was set at various level within the Ribbon
  • InvalidOperationException may occur when switching themes and the WPF Ribbon is Minimized
  • Ribbon Tab Header content may not appear when Ribbon starts out collapsed
  • RibbonTab.TabHeaderLeft & RibbonTab.TabHeaderRight are incorrect when Ribbon starts out hosted in a Collapsed control
  • Ribbon Tool Tip: Title and Footer Title gets clipped if the stringis too long
  • Vertical and horizontal alignments for the standard Ribbon controls should be centered, they were not.
  • After removing all items from the Quick Access Toolbar, phantom items remain visible
  • Right clicking on the System icon will not place the Context Menu properly
  • System Icon, Title and Quick Access Toolbar are not displayed correctly when Ribbon Windows is maximized
  • A minimized Ribbon will render on top of the window when a Popup is opened.
  • RibbonWindow.Icon does not pick appropriate small size icon from *.ico  Icon file.
  • IndexOutofRange Exception would pop when removing a Tab from an Observable Collection.
  • WPF Ribbon can use ClearType when targeting .NET Framework 4.0 control.

The two most important fixes in here for me are the cleartype fix, and the support for the Express SKUs. You know I go nuts over proper ClearType rendering.

Note that the ClearType fix is in the .NET 4 version of the DLL, not in the 3.5sp1 version. That's due to it using ClearType enhancements that came about only in .NET 4. One interesting thing to note here is that we do actually have two different DLLs now, so you can have your .NET 4 project and use a version compiled specifically for .NET 4. It's the little things that make me happy :)

Samples

This release includes several samples, including a nice MVVM sample.

RibbonWindow Wordpad Sample
This sample illustrates a Ribbon control hosted within a RibbonWindow that emulates the Wordpad appearance.

RibbonWindow MVVM Sample
This sample illustrates a Ribbon control hosted within a RibbonWindow that is completely populated from a view-model collection.


RibbonBrowser Wordpad sample
This sample illustrates a Ribbon control hosted within a browser window that emulates the Wordpad appearance.


RibbonBrowser MVVM sample
This sample illustrates a Ribbon control hosted within a browser window that is completely populated from a view model collection.

All four samples are available as part of the source and samples download (separate from the control download)

Related Links

Congrats again to the WPF Ribbon team for yet another great release!

     
posted by Pete Brown on Friday, October 22, 2010
filed under:      

15 comments for “WPF Ribbon October Release”

  1. Stuart Rankinsays:
    I downloaded the files and the install and source files said they were version 3.5... I looked at the details tab of the .msi file's properties and it said the content was created on 29-Jul-10 and the comments section said: "This installer database contains the logic and data required to install Microsoft Ribbon for WPF July 2010 (Version 3.5.40729.1)." This isn't an early April fool's joke, is it?

    Stuart
  2. James Portellisays:
    I updated to the latest release and I am still experiencing some rendering issues:

    System Icon, Title and Quick Access Toolbar are still displaying badly when windows is maximised.
    When Ribbon is minimised I'm seeing new quirks that were not present in the original version.
    Problems rendering images @ 120dpi.
  3. Stuart Rankinsays:
    The incorrect version may be due to something on my windows system. I went to the download site using another operating system, downloaded the files, moved them to my windows box, and the version numbers were correct. Kludgy but it worked.

    Stuart
  4. James Portellisays:
    Another error....

    All the elements in a RibbonWindow are resorting back to grayscale ClearType. The Ribbon itself is using ClearType.

    I'm using WPF 4 and the 4.0 version of WPF ribbon
  5. Maxim Alexeyevsays:
    Thank you for the release.

    Question, what about themes? Let's say I would like to use Office2007Black theme that is available in other products. Is there support for this theme for WPF Ribbon? Are there any themes, or at least some guidance, available for theming WPF Ribbon.

    BTW, I had to remove old ribbon to fix "This installer database contains the logic and data required to install Microsoft Ribbon for WPF July 2010 (Version 3.5.40729.1)." problem.
  6. James Portellisays:
    I partially solved the Cleartype issue. This article explains all. I am still having problems with ClearType in a ListView however.

    http://blogs.msdn.com/b/wpf/archive/2010/10/29/enabling-cleartype-for-ribbon-applications.aspx
  7. Marcus Whitworthsays:
    Hi Pete, just following up on Maxim's comment - is there an easy way to get hold of the old Office2007Blue etc. themes for use with the new ribbon? My users are stuck with XP at the moment, and when I use the RibbonWindow, the window chrome looks like something from Windows 3.1 days...

    Any suggestions otherwise?
  8. Patrick Finnigansays:
    @Maxim & Marcus - See my reply to Mark here: http://blogs.msdn.com/b/wpf/archive/2010/10/21/wpf-ribbon-october-2010-update-details.aspx
    These convenience APIs like Ribbon.MouseOverBackground and the plumbing that we did in all of the Ribbon controls make it easy to reskin the Ribbon by setting only a few Brush-type properties. To get the Office Black/Blue skin look, one must also retemplate RibbonWindow (to get the right title bar color and the curved corners). Sounds like this is a common customer request, so I will blog about it when I get a chance.
  9. Patrick Finnigansays:
    @Stuart - Sorry you had some pain getting the new MSI on your system. Uninstalling the old Ribbon MSI before installing the new one should always work, without confusion. Trying to install the new MSI while the old MSI is still installed brings up the repair/uninstall dialog for the old MSI (July "2010"), which is confusing.

    @James - If you are seeing rendering bugs with this new release, please do report repro steps and screenshots to our team (http://connect.microsoft.com/WPF). We will prioritize to fix these. As far as getting ClearType in ListView, if you are creating ListViewItems directly in your XAML you just need to set RenderOptions.ClearTypeHint="Enabled" on these (or use a Style) and make sure they have an opaque Background. If you're using ItemsSource, for the ListView.ItemTemplate you can include a Border element with RenderOptions.ClearTypeHint="Enabled" and Background="White" (or bind it to the RibbonWindow.Background, etc.).
  10. James Portellisays:
    Thanks for your help. I managed to solve the ListView Text rendering problem by setting ItemContainerStyle with ClearTypeHint Enabled and a white Background.
    Two other problems are left... the text in a plane and simple TextBox and TabItem Header in a TabControl. Both are rendering to Grayscale. I tried all the tricks with no success.
  11. Max Palmersays:
    @Patrick Finnigan

    Patrick, we've just switched to the October 2010 WPF Ribbon and noticed a couple of areas where our functionality has taken a step backwards. Thishas caused some frustration here and glances towards other ribbon controls. Some clarification would be great since the waters are murky.

    1) As mentioned in the comments, we've lost the office black theme which we were using. I note from this post
    http://social.msdn.microsoft.com/Forums/en-US/wpf/thread/787867d9-7e08-4ec9-b7aa-674dff932a52/

    that it might be easy to update the theme to give it a expression dark / office black look. You did mention in the comments that you might blog on this? Did you ever follow it up :-) ? If so, any pointers would be gratefully received.

    2) The ribbon dialog box launcher functionality is not present. This is a huge omission from our point of view, since it is a core ribbon feature. From reading various posts it seems it may have been removed due to a patent dispute at the time. However, the Office 2010 ribbon still uses it. Are there any plans to update the ribbon to add this back in? Third party ribbons still have it...

    While I'm on the topic...

    3) What is the roadmap for the ribbon? On the WPF blog it appears that it is 'destined to follow the path of the DataGrid' and migrate to the .Net framework. I also note that the ribbon is one of the headline items for WPF in the 4.5 CTP. However, it is unclear what, if anything, has changed. Are there any pointers on this?

    4) Are we likely to see a resumption of posts on the WPF team blog? It seems eerily quiet.

    5) Are we likely to see an office 2010 style WPF ribbon, like the fluent one being developed on codeplex?

    Many questions of which the first two are most interesting to me at the moment. I hope someone on the team can help.

    Thanks,

    Max
  12. Kostassays:
    One of the advantages of using WPF is the ability to scale the UI.
    Try setting a ScaleTransform (let's say scale by 2 in both directions) to the main grid of a window that uses a ribbon and see what happens....
    UGLY ! (there's a gap between the title bar and the ribbon).
    If there wasn't this bug, would definitely use the ribbon.

    I have also experienced some problems with the designer on the RibbonWindow but I'm not sure this is a problem that always appear.
  13. Kostassays:
    I think you should make a custom chrome window (that paints it's own "non-client area" - which will not be non-client actually but a WPF layout so that you can scale it and style it). Then, on this window, you could make the ribbon work like a charm!
    I hope you do this because I really like your ribbon.
    Best wishes! :)

Comment on this Post

Remember me