As many of you know, last year we published a series of blog posts soliciting feedback on our 2019 Roadmap:
- WPF Controls
- Office File API, Office-inspired Desktop UI Controls
- WinForms, WPF and ASP.NET Charting
- WinForms and WPF Diagram
- WinForms and WPF Reporting
With your help, we were able to finalize our plans for this year. Thank you for your continued support. Here is our official 2019 WPF Roadmap…
Important Note: In nearly every instance, we selected features/products that received the highest vote count. In many instances, total votes for features that appear on this roadmap failed to break the 50% mark. This does not mean that the feature/product did not win the vote - it simply means that it received a plurality - not a majority.
Table of Contents
- .NET Core 3 Support
- New Controls
- Data Grid & Tree List - Common Features
- Tree List
- Pivot Grid
- Themes
- Charting
- Office-Inspired Products
- Ribbon
- Scheduler
- Gantt
- Diagram
- Mapping
- Reporting
.NET Core 3 Support
Our WPF controls support .NET Core 3 Preview (v18.2.4). Throughout 2019, .NET Core 3 will remain a primary focus area. Together with Microsoft, we will work on known issues and change our control implementation where necessary. Our goal is to provide you with a stable and well-tested component set by the time .NET Core 3 is released.
New Controls
Breadcrumb (v19.1)
We will be working on a new Breadcrumb control in 2019. It will help simplify app navigation and allow you to construct hierarchical navigation paths.
Time Picker (v19.1)
Our new Time Picker control will allow you to edit time values. It will be a standalone control that can also be integrated into our existing DateEdit.
TimeSpan Editor (v19.1)
TimeSpanEdit is a text box that allows you to edit TimeSpan values (duration). You will be able to use it as a standalone editor or within container controls such as the DevExpress Data Grid and Gantt.
We have yet to finalize plans for the TimeSpanEdit control and are not certain whether it will ship with a dropdown (in addition to a text box). Let us know whether you’d like to see a dropdown for this control in the comments section.
Autocomplete Editor (v19.2)
This feature received 44% of the vote in our survey.
Will allow you to select text or objects from a dynamic list of suggested matches. The AutoComplete Editor will provide an event that expects you to return a list of matches based on entered text.
Data Grid & Tree List – Common Features
Filter Editor – New Design, Customization API, and more (v19.1)
In our v18.2 release cycle, we released a new Filter Editor. We plan to extend and improve this control in 2019 with the following features:
- A hierarchy for bands or nested properties in the field selector
- Advanced customization API
- Support for Aggregate operations (e.g., "Accounts.Sum(Amount) < 100")
We will also modify the Filter Editor’s appearance and give it a more modern look & feel:
Once these enhancements are complete, we will use the new Filter Editor in the Pivot Grid and DevExpress Reports.
Grouped Filters (v19.1)
With Grouped Filters, you will be able to display values from multiple columns in the Excel-style Filter Dropdown.
Conditional Formatting Filters (v19.1)
Conditional Formatting Filters will be available both in the Filter Dropdown and Filter Editor. They will allow you to filter data based on Conditional Formatting rules defined for a column.
We will also create a dedicated Filter Element for Conditional Formatting Filters.
Search Enhancements (v19.1)
The Search Panel will display the total number of matches and the index of the current match. We will rework the Search Panel’s buttons to make them more compact.
We have some ideas for search performance optimization. If all goes well, the search will work significantly faster in grids with many columns and rows.
“No Records” Text Block (v19.1)
This is a small but often requested feature – the Data Grid and Tree List will display a text block in the data area when it displays no records, or if a filter/search query yielded no results.
New Filter Panel (v19.2)
We hope to improve the DevExpress WPF Filter Panel to make it more intuitive and easier to use. Currently, it displays a string representation of applied filters (as plain text). This approach works well for simple filters with one or two filter clauses. Complex filters are hard to read and will be truncated if they don’t fit on-screen. The new Filter Panel will display separate tokens with filters for every column (making it easier to read and manage). If an applied filter does not fit within the screen area, tokens will be collapsed and will display detailed information in a popup.
Summary for Selection (v19.2)
This feature received 28% of the vote in our survey.
You will be able to define summary items and display summary values for selected rows/cells.
Explicit Post Mode (v19.2)
This feature received 28% of the vote in our survey.
In this new editing mode, the Data Grid and Tree List will display the Save button next to an edited row. End-users will need to save their changes after editing before navigating away.
Tree List
New Item Row (v19.1)
The Tree List will display an additional empty row at the top or bottom. You will be able to enter data into the empty row to create new nodes and then drag them anywhere in your hierarchy.
New Filter Mode (v19.1)
With our new filter mode, the Tree List will display all child nodes when their parent nodes meet the applied filter criteria.
IsEnabled CheckBox Binding (v19.1)
You will be able to disable node check boxes for specific nodes based on your business logic.
Pivot Grid
Excel-style Filter Dropdown (v19.1)
Our WPF Pivot Grid will support a new Excel-Style filter dropdown. It will allow you to search for filter values, select multiple values simultaneously, and display values from multiple columns in a hierarchy. You will also be able to define more complex filters for a given column using the Rules tab.
New Filter Editor (v19.1)
The Pivot Grid will use the new Filter Editor developed for the Data Grid. It will support all new filtering features (record count display, predefined filters, aggregate operations), will be more customizable and modern in appearance.
Intermediate Level Aggregates and Window Calculations (v19.1 or v19.2)
New Filter Panel (v19.2)
Like the Data Grid and Tree List, the Pivot Grid will feature a new Filter Panel that displays filter clauses for different columns as removable tokens. The new Filter Panel can collapse tokens and display more information within a dropdown.
Themes
Office 2019 Themes (v19.1)
We will release a set of Office 2019-inspired themes for our WPF controls. Like other modern themes, they will ship with lightweight templates for our most popular controls and will support color palette customization in the Theme Designer.
Color Presets (v19.1)
Office 2019 themes will introduce a new concept to our WPF themes – Color Presets. Themes that support Color Presets will be able to switch their color scheme dynamically at runtime (much like our WinForms Bezier theme). This will allow you to use one theme with an unlimited number of color presets. It will help you extend end-users options without affecting the size of the deployed package.
Theme Designer Enhancements (v19.1 and v19.2)
Since appearance and personalization is a popular request, our team will continue to improve our Theme Designer tool. We expect to introduce the following enhancements in v19.1:
- An incremental build process that significantly reduces the time to build a theme.
- A Command Line Interface to compile custom themes on a build server.
In v19.2, we plan to work on the following most voted features for the Theme Designer:
- A Live Visual Tree for the Preview window (received 32% of the vote).
- A Property Grid to edit properties of an element selected in the Preview (received 31% of the vote).
Fluent Design – Acrylic Material and Reveal Highlight Effect (v19.1 or v19.2)
We will support the following Fluent Design elements in 2019: Acrylic material and Reveal Highlight effect. We will implement these features for our Themed Window and Hamburger Menu controls so you can deliver apps that mimic the user interface of Microsoft’s Windows 10 Mail app.
Fluent Design Theme (TBD)
This feature received 31% of the vote in our survey.
Many of you voted for themes with a modern look and feel and low-density UI (Fluent Design and Material). We will research how our templates can be modified to incorporate Fluent Design across most of our controls by the end of 2019.
Charting
Rendering Performance Enhancements (v19.1 and v19.2)
Histogram Series (v19.1)
This feature received 45% of the vote in our survey.
This Series view is useful when representing the distribution of numeric data via bars of equal width. Each bar displays the number of values that fall into consecutive, non-overlapping intervals of a variable.
Series Segment Colorizer (v19.1)
Built-in Drill-Down (v19.1)
New Axis Alignment Option (v19.1)
Summary Functions (v19.1)
- minimum ("MIN")
- maximum ("MAX")
- sum ("SUM")
- average ("AVERAGE")
- count ("COUNT")
Waterfall Series (v19.2)
This feature received 45% of the vote in our survey.
Based on a start value, a Waterfall сhart displays the cumulative effect of sequentially added positive and negative values.
BoxPlot (v19.2)
Box plots are used to display the distribution of data through quartiles.
TimeSpan Axis Scale Type (v19.2)
The TimeSpan scale type will represent the values or arguments of series points as TimeSpan values on an axis.
Advanced Text Formatter for Crosshair Panel (v19.2)
Office-Inspired Products
Office File API for .NET Core (v19.1 and v19.2)
- Word Processing Document API
- PDF Document API (Universal subscription)
- Spreadsheet Document API (Universal subscription)
This feature received 45% of the vote in our survey.
In our v19.1 release cycle, we expect to release our Office File API for .NET Core on Windows. Office File API functionality for .NET Core will also be available on Linux with the following limitations:
- Embedded font support for PDF files (planned for v19.2).
- RTL support in Word Processing API (planned for v19.2).
- Conversion of PDF content to bitmap images (not planned at the moment).
PDF Export - Embedded OpenType Font Support (v19.1)
- Spreadsheet
- Rich Text Edit
- Word Processing Document API
- Spreadsheet Document API (Universal subscription)
Theme Fonts (v19.1)
- Rich Text Edit
- Word Processing Document API
This feature is important for RTL document editing. Applicable for existing documents only.
Optimized Printing and Layout Calculation Engine (v19.1)
- Spreadsheet Document API (Universal subscription)
This feature received 21% of the vote in our survey.
This optimized engine will help us improve printing and layout accuracy of Spreadsheet documents.
Simplified Formula Generation (v19.1)
- Spreadsheet
Use cell ranges from other worksheets and select referenced cells using arrow keys when creating or editing formulas.
Non-Embedded CID Fonts with Predefined Encoding (v19.1)
- PDF Viewer
- PDF Document API (Universal subscription)
PDF documents containing non-embedded CID fonts with predefined encoding will be supported in our PDF viewer and our PDF document API.
Change Tracking (v19.2)
- Rich Text Edit
- Word Processing Document API
This feature received 21% of the vote in our survey.
With change tracking, your users will have the ability to accept/reject individual changes within a document. This release will include Add, Delete and Move change types.
Multiple Signatures – PDF (v19.2)
- PDF Document API (Universal subscription)
We hope to introduce multiple signature support for PDF documents.
Ribbon
Office 2019 Style and Simplified Ribbon (v19.1)
Our Ribbon control will introduce a new Office 2019 style that that closely matches the Ribbon in latest Microsoft products. We will also ship a Simplified Ribbon option, allowing you to collapse the Classic Ribbon into a single row.
By default, the Simplified Ribbon will use the same set of Bar Items defined for the Classic Ribbon. You won’t need to write any additional code to use it.
Scheduler
Printing (v19.1)
We expect to rework our WPF Scheduler’s print functionality. This will include a new WPF Preview window, updated printing templates, customization API, and more.
Design Changes – Outlook-inspired UI (v19.1)
The Scheduler’s UI will change so that it is more modern and matches the user experience of Microsoft Outlook. The enhancements we hope to ship in 2019 include:
- Resource headers will look like tabs and will use resource colors.
- Date headers will also use resource colors and will look slightly different.
- Appointments will use resource colors if no label is specified.
- Navigation buttons will look different and will also use resource colors.
- Empty cells will look the same for all resources (white in most themes).
- We will add a header with the current date and navigation buttons at the top.
Clipboard Support (v19.1)
The Scheduler will support Cut, Copy, and Paste operations within one control, between controls in the same application, and between multiple applications using the Scheduler.
Special Slots (v19.2)
Special slots will allow you to define dates or time areas and highlight them on the Scheduler’s surface.
Gantt
Task Interaction (v19.1)
You will be able to drag-and-drop tasks to change Start Date, resize tasks to change Duration, change task Progress, and draw a line from one task to another to create a dependency.
Worktime Duration (v19.1)
The Gantt control will take non-working hours and holidays into account when calculating task duration. For example, with the default configuration, a task with a Duration of 16 hours will span two days on the timeline and will display ‘2 days’ in the tree list area.
Striplines (v19.1)
The Gantt control will allow you to highlight specific regions in the Gantt area to indicate an event or an important event (a weekly meeting, release date, etc).
Automatic Task Scheduling (v19.1 or v19.2)
This functionality is crucial for proper data editing in the Gantt control. Whenever you update a task or load a data source with incomplete data into the Gantt control, the Gantt control will automatically calculate Start/Finish dates for all dependent tasks. For example, you will be able to create a set of dependent tasks and define how much time is needed to complete each task. The Gantt control will then arrange tasks on the timeline and decide when each task should start and end.
Dependency Lag (v19.1 or v19.2)
Every dependency will include an optional Lag value (positive or negative) that indicates the amount of time that should pass before the dependency affects a connected task.
Editing Enhancements (v19.1 or v19.2)
We will create dedicated editors for the Duration and Predecessors columns in the Tree List area so that end-users can easily enter TimeSpan values and select predecessor tasks from a dropdown list.
Critical Path (v19.1 or v19.2)
The Gantt control will automatically calculate and highlight the critical path in the Gantt area. The critical path will automatically update whenever you move tasks or change duration and progress.
Diagram
Collapsible Containers (v19.1)
Container items will display an Expand/Collapse button in their headers so that end-users can display/hide container content.
This feature is useful in Entity Relationship diagrams where containers represent tables or classes (where members should be invisible).
Another popular usage scenario for collapsible containers involves items with complex content (multiple text fields, images, or both). Our Data Binding and Org Chart controllers use Containers to generate such items. With the Collapsible Containers, you will be able to generate items that display more content when expanded. For example, Org Chart cards that only show employee name by default, along with a photo with a description when expanded.
Export to PDF (v19.1)
It is already possible to print your diagrams to PDF using the Windows 10 PDF printer. However, the PDF printer is not an option if you want to automatically save your diagram to PDF and push it to the database. Many of you requested a built-in PDF export engine that will work even if the PDF printer is not installed and will not require your users to invoke the Print dialog.
The new built-in engine will export the diagram to a PDF file as a vector image with no raster elements (you don’t have to worry about scaling issues). It will also recognize all text elements. You will be able to select and copy text in the PDF file or add text annotations.
Printing – Fit to Page (v19.1)
By default, the Diagram control prints its content in the same way it is displayed on document pages. If content spans multiple pages, it will be printed on multiple pages as well. After printing, you will need to piece pages together to see the diagram as it was displayed on screen. This behavior is useful for large diagrams and can also be seen in other applications such as Microsoft Visio.
The Fit to Page feature allows users to scale a diagram and fit it onto a single page or fixed number of pages.
Start and End Connector Labels (v19.2)
Currently, you can only display one label at the center of the connector. This feature will allow you to display start and end labels with information about a relationship or a connected item.
Automatic Org Chart Layout (v19.2)
Organizational charts often use a standard Tree layout but arrange the last few layers of items vertically to free up horizontal space. We will improve our Tree layout algorithm so that you can specify which layers in the tree should be arranged vertically.
Mapping
Shape Image Element (v19.2)
You will be able to use external raster images linked to geolocation as a background in the Map Control. These images typically display more detailed maps for specific areas and replace maps used by the default map provider.
Vector Shape Simplification (v19.1)
Built-in Measurement Tools (v19.1 and v19.2)
In-Memory Tile Image (v19.2)
Reporting
New Report Designer Features (v19.1)
- Combine Multiple Reports into One
We will give you the ability to combine multiple reports within the Report Designer, allow you to define print order and print all as a single document. This will address limitations associated with report merging (which is only available at runtime). - Create Hierarchical Data Reports
We will give you the ability to create hierarchical data reports (tree structures) and define the offset of a given band’s content based on nesting level. - Create and Store Band Templates using the Report Gallery
This will allow your customers to share gallery content and to generate reports with unified headers or footers.
XRPivotGrid: Advanced Cross-Tab Reports (v19.1)
JsonDataSource: Authentication Support (v19.1)
XRControl Enhancements (v19.1)
- XRLabel: HTML-Inspired Text Formatting
We will allow you to format content in XRLabel using a subset of pseudo-HTML tags currently supported by our WinForms controls. - XRCheckBox: SVG Glyphs
We will allow you to change the default glyph associated with XRCheckBox using a pre-defined SVG glyph list.
Report Designer: Data Federation (v19.1 and v19.2)
PDF Export: Visual Signatures (v19.2)
Printing Markdown Content (v19.2)
Rounded Corners (v19.2)
New Report Designer Features (v19.2)
- Re-order Detail Reports in Report Explorer
This feature received 31% of the vote in our survey.
You’ll be able to move an entire detail report if it was created at the wrong report hierarchy level. - Embed PDF Documents into a Report Document
This feature received 44% of the vote in our survey.
You’ll be able to insert a PDF file into a report and define its content boundaries within a document. - Move Bands to a "Background” Layer
This feature received 31% of the vote in our survey.
You’ll be able to combine multiple bands so that content is rendered in a more compact manner. - Display Empty Table Rows after Existing Data
This feature received 21% of the vote in our survey.
You’ll be able to repeat empty rows until the bottom of the page is reached (to conform to a report’s structure).
Report Parameter Enhancements (v19.2)
- Date Range Parameter
This feature received 26% of the vote in our survey.
You’ll be able to create a date range parameter and select its value at runtime using a single editor in the parameter panel. - Date and Time Parameters
This feature received 21% of the vote in our survey.
You’ll be able to create a date or time parameter. - Parameter Editor Grouping
This feature received 20% of the vote in our survey.
You’ll be able to logically group multiple report parameters in the parameter panel (display editors in a Group Box). - Visibility of Parameter Editors
This feature received 19% of the vote in our survey.
You’ll be able to hide a parameter editor based on the value of a different parameter.
The information contained within this blog post details our current/projected development plans. Please note that this information is being shared for INFORMATIONAL PURPOSES ONLY and does not represent a binding commitment on the part of Developer Express Inc. This roadmap and the features/products listed within it are subject to change. You should not rely on or use this information to help make a purchase decision about Developer Express Inc products.