WPF Studio 2010.2 Released

Announcements Forum

Posted 14 years ago by Actipro Software Support - Cleveland, OH, USA
A major new version of WPF Studio is now available that adds Office 2010 themes and added an enormous number of features to many products.

See the latest newsletter for a high-level list of new features and screenshots.

Detailed Update List


  • Added support for new Office 2010 blue/black/silver themes.


  • Added support for new Office 2010 blue/black/silver themes.
  • Added an option to deserialize layout information for either tool windows only, or the entire layout (document and tool windows).
  • Added support for automatically creating docking windows when deserializing layout information.
  • Added support for lazily loading layout information when docking window is registered at a later time.
  • Added the Layout Auto Creation, Layout Lazy Loading, and Layout Persistence QuickStarts to demonstrate new serialization features.
  • Removed extraneous information from being serialized out when saving layout.
  • Added support for various tab overflow behaviors to tabbed MDI and tool window containers.
  • Added new Tab Overflow Behavior QuickStart to demonstrate new tab overflow behavior configuration options.
  • Altered Styles for ToolWindow, DocumentWindow, TabbedMdiContainer, and ToolWindowContainer to support tab overflow behaviors.
  • Added context menu support to AutoHideTabStrip, which allows access to auto-hide tool windows that are off-screen.
  • Added ContextMenuType property to DockingWindowContextMenuEventArgs to provide more context about the menu being created/shown.
  • Added DockingCommands.OpenToolsMenu which shows a context menu for the active tool windows in a ToolWindowContainer.
  • Added StandardMdiHost.ArrangeMinimizedWindows method so minimized windows can be explicitly arranged at any time.
  • Added optional scrolling support to the StandardMdiHost which can be configured using the new IsScrollingEnabled property.
  • Added ability to hide maximize and minimize buttons of standard MDI child windows.
  • Added ability to disable auto-cascade of standard MDI child windows using new StandardMdiHost.IsAutoCascadeEnabled property.
  • Added ability to hide the frame and title bar for a maximized WindowControl using the new IsMaximizedFrameVisible property.
  • Improved drag/drop support so windows in the auto-hide state will close when the mouse is dragged away.
  • Added ability to hide the frames and title bars to StandardMdiHost when the child windows are maximized using the new AreMaximizedWindowFramesVisible property.
  • Added methods to StandardMdiHost which can be used to close, maximize, minimize, or restore the primary window.
  • Added StandardMdiHost.WindowStateChanged event which is raised when a MDI child window is maximized, minimized, or restored.
  • Updated Standard MDI-Only QuickStart to demonstrate new features.
  • Added new Ribbon & Standard MDI Integration QuickStart to demonstrate how to merge the document title and minimize/restore/close buttons into the Ribbon.
  • Added ability to hide document or tool window columns in the standard switcher.
  • Added new Switcher (Standard) QuickStart to demonstrate the standard switcher and the available options.
  • Added DockingWindowPreview decorator, which can be used to present a live preview of any DocumentWindow or ToolWindow.
  • Added new Docking Window Preview QuickStart to demonstrate the DockingWindowPreview decorator.
  • Updated default ToolWindow style to allow the ToolTip to be customized.
  • Added new Preview ToolTips QuickStart to demonstrate how to use the DockingWindowPreview decorator in a ToolTip.
  • Added ToolWindowContainer.SingleTabLayoutBehavior and associated DockSite property to control how containers with a single window display tabs (hide, show, or stretch).
  • Added new Single Tab Layout Behavior QuickStart to demonstrate new single tab layout configuration option.
  • Added new Buttons On Selected Tabs QuickStart to demonstrate how to move the tool window buttons to the tab of the selected item.
  • Updated images to use Uniform stretching instead of UniformToFill to better support non-square images.
  • BREAK: Updated default styles and control templates to use ItemContainerStyle instead of using implicit styles for document and tool windows.
  • BREAK: Removed DockingWindow.AutoApplyStyleToInheritedClasses property since it is no longer needed.
  • BREAK: Renamed the StandardMdiHost.WindowsHaveMinimizeButtons property to CanWindowsMinimize.
  • BREAK: Replaced the TabbedMdiTabPanel and ToolWindowTabPanel with the new DockingWindowTabPanel.
  • BREAK: Replaced AreDocumentDropDownButtonsVisible property in TabbedMdiHost and ToolWindowContainer with TabOverflowBehaivor.
  • BREAK: Changed DockingCommands.OpenOptionsMenu command parameter to a DockingContextMenuType, so the type can be provided when raising the DockSite.WindowContextMenu event.
  • BREAK: Removed DockSiteLayoutSerializer.CanLoadToolWindowTitles property since the title is no longer saved or restored.
  • Fixed issue with DockingWindow.State property not being properly updated when deserializing layout for a DockSite that is loaded.
  • Added component resource keys and associated brushes for document tab highlight so it can be customized.
  • Fixed issue with using StandardMdiHost in a container that allowed unlimited space, such as StackPanel.
  • Added TitleBarVisibility property to RaftingWindow and RaftingWindowControl, which can be used to customize the visibility of the title bar.
  • Fixed issue where docking cross was getting cut off by 1 pixel in certain themes.
  • Fixed issue with calculating bounds of HostedRaftingWindowContainer in certain scenarios.
  • Fixed issue with document and tool windows appearing active when used in a DockSite located inside an outer document or tool window.
  • Fixed issue with non-hosted popups being positioned incorrectly when a layout transform is applied to the DockSite or one of its ancestors.
  • Fixed issue where document and tool windows were not activating and focusing immediately upon mouse down in tab or title bar.
  • Fixed issue with using DockingCommands.ClosePrimaryDocument and Ctrl+F4 with an inner and outer DockSite.
  • Fixed issue with StandardMdiHost restoring minimized windows when it windows are closed.
  • Fixed issue with selected tabbed MDI document tabs rendering incorrectly in certain scenarios.


  • Added support for new Office 2010 blue/black/silver themes, including Ribbon (Interop) styles.
  • Updated CountryComboBox and CurrencyComboBox styles to set a default text search path.
  • Updated MonthCalendar tab navigation behavior.
  • Added SelectFirstGroup method to PartEditBox, which can be used to select all the text of the first group.
  • Fixed issue with Luna themes for native TextBox control.
  • Fixed issue with bindings that use LostFocus and selecting a value from the popup of PartEditBox and its derivations.
  • Fixed unhandled exception thrown on system that have the keyboard caret blink interval set to none.
  • Fixed issue with border of DropDownButton not snapping to device pixels in Office 2007 theme.
  • Fixed issue with MonthCalendar extended and range selection when using next/previous month buttons.
  • Fixed issue with PartEditBox and its derivations not always taking the focus back from the popup when it closes.
  • Fixed issue with MaskedTextBox not displaying literal characters at the end of the mask.
  • Fixed issue with MaskedTextBox not deleting literal characters at the beginning of the input when backspacing.


  • Added support for new Office 2010 blue/black/silver themes.
  • Updated NavigationBar so images that are smaller than required are centered and not scaled up.
  • Updated an expander style to fix a potential measurement issue.
  • Added ZoomContentControl.TranslatePointFromContent method to translate points from the content element.
  • Fixed unhandled exception when changing theme of ZoomContentControlSlider.


  • BREAK: Made several changes to increase performance of the PropertyGrid (see documentation for a complete list of changes).
  • BREAK: Updated PropertyGrid so it will update its items after it has been loaded once, instead of only updating if it is currently loaded.
  • Added support for new Office 2010 blue/black/silver themes.
  • Added support for nested categories when using SelectedObject(s)/Properties.
  • Fixed issue with using implicit Styles for TreeListViewColumnHeader.


  • Major style, template and resource updates to add three full Office 2010 themes.
  • Added the ToggleMinimizationButton control that can be added to Ribbon.TabPanelItems to provide an Office 2010-like toggle minimization button.
  • Improved the CloneService to clone bindings made on dependency properties.
  • Updated the ribbon:Separator controls to look better in the QAT.
  • Improved the system icon menu display.
  • Changed CheckableCommandParameter to inherit Freezable to help resolve Tag property binding issues.
  • Fixed an issue where editable ComboBox controls could appear enabled when disabled in a theme.
  • Fixed an issue with RibbonWindow selecting the wrong frame size from the given ICO file.
  • Fixed a bug where switching themes could cause the glass outer glow effects on contextual tab groups to render incorrectly.
  • Fixed a bug where a non-scenic Ribbon that started in a minimized Window wouldn't position the orb application button correctly.
  • Updated the FontFamilyComboBox to ensure fonts are sorted properly.
  • Updated key tip service code to not show key tips when Alt is released if the mouse was clicked while Alt was down.
  • Updated styles to ensure custom implicit styles don't affect ribbon control foregrounds.
  • Updated galleries to not raise extra CancelPreview notifications when a Commit will occur.


  • Added the Web Languages Add-on (sold separately from WPF Studio) that includes an advanced XML syntax language implementation with validation, code outlining, and automated IntelliPrompt based on XSDs.
  • Added new HTML and XML Editor demos, and a new Getting Started QuickStart that show off the XML syntax language from the Web Languages Add-on.
  • Added the LL(*) Parser Framework, which makes it easy to construct advanced text parsers using EBNF-like grammar natively written in C#/VB that integrate easily with SyntaxEditor, have customizable AST construction, robust error handling, and many more features.
  • Added a new add-on that integrates SyntaxEditor with Irony parsers, including support for AST building and parse error reporting.
  • Completely redesigned the Getting Started QuickStart series into a 15-part start-to-finish language implementation that shows everything from parsing to realistic IntelliPrompt.
  • Added a new Language Transitions QuickStart that shows how to merge two independent languages together.
  • Added a free Ruby language definition.
  • Added the SquiggleTagQuickInfoProvider service that can be registered on a language to automatically provide IntelliPrompt quick info tips for parse errors returned by a parser.
  • Added the ISquiggleTag.ContentProvider property.
  • Added the IParseRequest.Language property, which passes the syntax language that owns the parser, if known.
  • Added the ITextSnapshotReader.Language property, which returns the language at the current reader offset.
  • Added the IMergableLexer.GetAllLexicalStateTransitions method.
  • Added the IMergableLexer.CreateChangeBatch method that should be wrapped around sections of code that change mergable lexers, and the related Changed event.
  • Updated the Language Designer with minor tweaks, and added token and lexical state ID provider generation for dynamic lexers.
  • Added the ITextBufferReader.AsTextReader method that returns a System.IO.TextReader for the buffer.
  • Added a new CanCommentEmptyLines property to LineBasedLineCommenter.
  • Added the Start/EndSnapshotOffset properties to IEditorViewSelection.
  • Added DisplayLine/DisplayCharacter properties added to TextPosition, which are one-based and can be used in UI.
  • Enhanced the default ISearchResultSet object's ToString method to output a multi-line string specifying results, useful in results tool windows.
  • Tweaked how view mouse down focusing works.
  • Added the IEditorView.IntelliPrompt property that allows for requesting IntelliPrompt sessions programmatically.
  • Updated code that uses IQuickInfoProvider.ContextTypes such that derived classes from the ContextTypes are recognized, allowing for interfaces and base classes to be specified in ContextTypes.
  • Updated how the outlining manager processes language changes.
  • Updated snapshot readers to return a document end token when at the end of the snapshot, that provides context about the lexical state at the snapshot end.
  • Updated the ordering mechanism used when consuming language services.
  • Fixed a bug where two IntelliPrompt Quick Info providers returning data for the same offset didn't work properly.
  • Fixed a bug where canceling a completion list in a selection change handler could throw an exception.
  • Fixed a bug where acronym and shorthand search pattern providers could match when line feeds were between search characters.
  • Fixed a bug where the SyntaxEditor context menu was showing over scrollbars.
  • Fixed a bug with character case edit actions and block selection.
  • Fixed a bug where some edit commands weren't handling reverse selections properly.
  • Fixed a bug where replace operations were not escaping Kleene operator characters in replace text properly.
  • Fixed a bug with redo and the setting of the document's IsModified flag.
  • Fixed a bug where regex replacement patterns weren't using the backslash character as an escape.
  • BREAK: Updated LexicalStateBase.DefaultTokenKey to be "Default".
  • BREAK: Moved the LexicalStateId property from IMergableToken to IToken.
  • BREAK: Moved the ParseError class to the ActiproSoftware.Text.Parsing.Implementation namespace.
  • BREAK: Converted the IEditorView.HasFocusChanged, ITextView.Closed, ITextView.MarginsDestroyed events to not be routed.
  • Updated built-in completion list icons to use 24-bit alpha transparency.
  • Improved the XML and XAML sample language definitions.
  • Exited beta status: source code is now available.


  • Added new Book control and several demos and QuickStarts.


  • Added support for new Office 2010 blue/black/silver themes.
  • Fixed a bug that could occur if using stack-based page sequencing and canceling a backwards page change.

Shared Library

  • BREAK: Replaced XmlSerializerBase.ObjectDeserializedHandler/ObjectSerializedHandler properties with ObjectDeserialized/ObjectSerialized events.
  • Added IconFrameConverter which can be used in binding statements to select a specific frame size from an ICO file.
  • Added VisualTreeHelperExtended.IsMouseOver overload that takes a DragEventArgs parameter.
  • Added several extension methods for Double type.
  • Added several extension methods for Int32 type.
  • Added several extension methods for Point type.
  • Added several extension methods for Size type.
  • Fixed an issue with PopupButton needlessly retrieving automation peer when any property value changed.
  • Fixed issue with TransitionPresenter Content not properly inheriting DataContext in certain scenarios.
  • Fixed a bug with GlassWindow in Windows 7 where a system menu could be displayed when the system menu icon was hidden.

About WPF Studio

WPF Studio / WPF Essentials Licensing

You can purchase our WPF controls individually if you wish however you have the option to purchase all of them in the WPF Studio bundle. Purchasing the bundle saves over 60% over purchasing all the WPF controls individually.

The WPF Essential bundle saves over 45% over purchasing its bundled controls separately.

That's some incredible savings!

WPF Studio Benefits

All WPF control licenses automatically include a free subscription for a year of free upgrades to any new versions that are released. At the end of the year, you may renew your license for another year to keep the free upgrade benefits active.

In addition, if you own a WPF Studio license, you are automatically eligible to receive free licenses for any new WPF control products added to WPF Studio that come out within your year period. This benefit does not apply to WPF Essentials customers.

Live Demo

You can give all our lastest WPF control products a spin right in your browser as long as you have .NET 3.5 SP1 installed. Just follow the steps on this page to see live demos:

Download an Evaluation

You can download an evaluation of all our WPF controls from this page:

Upgrade to WPF Studio

Contact our sales team for information on discounted pricing for upgrading from one of our older WPF control product licenses to a license for WPF Studio, WPF Essentials, or a new version of a WPF control product.

Free Upgrades to 2010.2

If you own an older WPF Studio version or one of its products and would like to upgrade to this latest version, please click the request a free upgrade link on your Organzation Purchases page. The link will appear there if your upgrade eligibility is active.

Actipro Software Support