WPF Controls v24.1 Released

Announcements Forum

Posted 4 months ago by Actipro Software Support - Cleveland, OH, USA

A major new version of the Actipro WPF controls is now available.

Detailed Update List


  • The Bars product has exited the beta phase and is considered ready for production scenarios.
  • Added the MiniToolBar control that can be displayed alongside a context menu, and a new sample to demonstrate the control.
  • Per customer request, split out ribbon group two and three-row layout functionality into a separate new RibbonMultiRowControlGroup control to allow multi-row layouts next to other controls in the same ribbon group.
  • Removed the RibbonGroup.CanUseMultiRowLayout and ThreeRowItemSortOrder properties, and the same for the MVVM library's RibbonGroupViewModel class. See the 'Converting to v24.1' documentation topic for easy updates to the revised API.
  • Refactored how the BarPopupButton, BarSplitButton, BarMenuItem, and BarSplitMenuItem controls use the can-execute results of their commands to determine enabled states.
  • Updated the RecentDocumentControl template to support customizing some ScrollViewer properties.
  • Updated BarPopupButtonBase.GetContainerForItemOverride logic to generate a BarMenuItem container control instead of MenuItem as a final fallback option.


  • Updated logic for how XYGroupedAxis handles multiple series.


  • Added UIA peers for dock guides.


  • Updated DateEditBox, DateTimeEditBox, and TimeEditBox when editing to only update DateTime components for which parts are displayed. For example, a TimeEditBox only showing hour and minute parts will retain the existing DateTime's seconds component.


  • Added the Led.IsOffDelayEnabled property, which will delay the visual transition from the LED's On to Off state when enabled. This allows the LED to remain lit slightly longer during quick transitions.


  • Updated multi-select TreeListBox controls to only deselect already-selected items on pointer button release, which allows press and drag actions on these items to possibly start a drag operation.


  • The Ribbon product has been deprecated in favor of the newer Bars product.


  • Added native support to switch between light and dark themes using distinct color palettes for each theme intent.
  • Added SyntaxEditorThemeManager that automatically watches for changes in ThemeManager.CurrentTheme to synchronize light/dark color palettes and the CommonImageSourceProvider.DefaultImageSet.
  • Added SyntaxEditor.IsCurrentLineNumberHighlightingEnabled feature that will render the current line number in a style defined by DisplayItemClassificationTypeProvider.LineNumberCurrent.
  • Added built-in Operator and Punctuation IClassificationType instances to ClassifictionTypes.
  • Added BuiltInClassificationTypesProvider that will automatically register highlighting styles for built-in IClassificationType instances defined in ClassificationTypes.
  • Added Punctuation classification type to sample language definitions (where appropriate).
  • Added DisplayItemClassificationTypes.WordWrapGlyph to separate the word wrap glyph color from the visible white space color.
  • Added MarkdownDeleted classification type and highlighting style to the free Markdown language project and definition files.
  • Added support for primary and secondary carets to render with different brushes based on corresponding highlighting styles.
  • Updated collapsible region foreground, current line background/border, delimiter matching background, and find match highlight background colors to render with a default opacity when configured with opaque colors.
JavaScript Language Add-on
  • Added Punctuation classification type.
  • Fixed Operator classification type not being applied.
.NET Languages Add-on
  • Updated the C# parser grammar to support C# 9.0 syntax.
  • Updated the Roslyn extensions to use the latest Microsoft.CodeAnalysis.Compilers v4.8 NuGet package.
  • Improved resolver support for C# local functions.
  • Improved documentation comment display in IntelliPrompt to support 'para' and 'br' tags.
  • Added Punctuation classification type.
  • Fixed Operator classification type not being applied.
Python Language Add-on
  • Added support for IntelliPrompt to use type hint annotations.
  • Improved the resolver's ability to resolve types within external modules that were defined in other modules.
  • Added Punctuation classification type.
  • Fixed Operator classification type not being applied.


  • Added new Avatar and AvatarGroup controls.
  • Added new Badge and NumericBadge controls for adorning an element with contextual information.
  • Added the CircularProgressBar control, which renders a progress percentage in a ring shape using fluent animations, and also supports an indeterminate state.
  • Added UserPromptBuilder to simplify creating and showing prompts based on UserPromptControl. All Sample Browser samples updated to use UserPromptBuilder.
  • Added advanced customization to ThemedMessageBox by allowing the associated UserPromptBuilder to be configured before showing a message box. This includes global customization automatically applied to all message boxes.
  • Added support for user prompts to show CenterOwner or CenterScreen when using UserPromptBuilder. By default prompts will attempt to center over their owner and only show center screen when the prompt is too big for the owner.
  • Updated BorderChildClipConverter to scale corner radii if given values exceed the available width or height.
  • Updated StringFormatConverter to allow the string format to be alternately passed as the first value instead of the converter parameter since converter parameters do not support bindings themselves.
  • Fixed printer rendering when syntax highlighting was enabled and the editor was configured for use with a dark theme.
  • Deprecated UserPromptWindow.DefaultTitle. Use UserPromptBuilder.FallbackTitle instead.
  • Deprecated ThemedMessageBox.Show overload that accepted a Help action. Use overload with UserPromptBuilder to add the help action instead.


  • Updated and added UIA peers for numerous controls to better support accessibility updates in .NET 8.
  • API documentation is based on assemblies that target .NET 6 (previously .NET Framework).
  • The Sample Browser application included with the installer will now multi-target .NET Framework 4.6.2 and .NET 6.
  • Removed official support for Visual Studio 2017 although users should still be able to continue using the IDE for their own applications. Sample Browser requires Visual Studio 2019 or newer.
  • Removed XBAP support.

About WPF Controls

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 more than 65% over purchasing all the WPF controls individually.

The WPF Essentials bundle saves more than 40% 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.

Evaluation Download

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

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 organization account page's 'Purchases and Licenses' tab. The link will appear there if your upgrade eligibility is active.

Actipro Software Support