Before we head much further into the new year, I wanted to share the product roadmap for ComponentOne. We have many new items already in development that we're excited and ready to share. 2020 will be a big year for .NET with the advancements of .NET Core and .NET 5. As such, a lot of our focus will be around supporting these new platforms, while also continuing to deliver enhancements for existing frameworks.

.NET Core and the Future of .NET 5

The top priority for ComponentOne in 2020 will be continuing support for .NET Core 3.x and releasing .NET 5 versions of our WinForms and WPF controls. In a survey, we sent out last month we found that a good number of developers plan to migrate their existing apps or start new development with .NET Core. For us, this support will include updating our controls to work in .NET Core 3.1 apps and ultimately take advantage of newer .NET features such as high DPI. We are excited about what .NET 5 will bring for developers, and we can't wait to see what Microsoft has in store.

.NET Standard is Our Standard

With every new library we ask ourselves - can this be .NET Standard? This is the direction we are moving in with every new component library we create. We strive for cross-platform consistency and code re-use, not just on our end but for our customers' benefit as well. We've noticed a trend toward more services development and less reliance on a particular UI framework. For this reason, we plan to build upon our .NET Standard service components for data-centric solutions. Plus, even for the UI controls you'll be seeing more .NET Standard libraries shared across platforms.

Bring Your Data Together with .NET Standard Data Connectors

For .NET Standard, we'll be releasing a data connectivity library for performing any data operation, such as queries and updates, against a variety of supported data sources. The Data Connectors will provide a common interface for accessing popular data services, including Dynamics365, SalesForce, Google Analytics, and QuickBooks Online. The data connectors connect to internet-based sources that expose data through OData or REST-based API's with known data access technologies such as ADO.NET & Entity Framework Core. The connectors can be used in conjunction with our other unique offering, Data Engine, to get high-performance in-memory data caching & analysis.

With Data Engine and Data Connectors, you'll be able to connect to and merge data from disparate data sources, perform fast data analysis in memory, and query against millions of records in seconds.

Blazor UI Controls to be Released

Blazor is the newest .NET platform used for writing client-side and server-side web apps completely with C#. We are enthusiastic about this new platform and bringing a lot of our existing controls over. In the beta, released in late 2019, we introduced FlexGrid and several input controls. For 2020 we plan to expand the collection to include data visualization and some additional data filter and input controls that will enhance the grid and chart-focused offering. We will officially release our Blazor edition in the first release of 2020.

Our focus with Blazor has been on the server-side, which is ideal for intranet applications. Microsoft still considers the client-side in preview and, as such, it has some issues with performance and the runtime size that need to be addressed before it will be used in real-world applications. We are optimistic that Blazor will become a popular web solution for .NET development.

WinForms Support & Enhancements for 2020

For WinForms controls in 2020, we will continue to support the latest version of .NET Core within our .NET 4.5.2 controls and begin to roll out .NET 5 built controls to fully take advantage of the new platform. For those developers not moving to the newest version right away, rest assured we are planning to continue support for .NET 4.0 and .NET 4.5.2 libraries, which were just released last year. The table below shows our level of support for each .NET Framework as of February 2020.

.NET Framework

Supports .NET Core
Supported in 2020
Supported after 2020
Will include new controls & features in 2020
.NET 4.0 No Yes Yes, until 2021 v2 No
.NET 4.5.2 Yes Yes Yes Yes
.NET 5 Yes Yet to be released Yes Yes

In addition to continuing support for .NET Core 3.1+ and releasing a new version of controls built-in .NET 5, the following UI enhancements are planned for 2020.

New Filter Editor Control for WinForms

In early 2020 we'll be adding the new FilterEditor control to WinForms Edition. With FilterEditor the end-user can fully customize multiple, nested condition filters at runtime using AND/OR. It can be used with any data-aware control like a grid, list or chart.

FlexGrid Enhancements

Since FlexGrid is one of our most popular WinForms controls, we are committed to continuously add value and time-saving features. Some of these features are extensions to FlexGrid, and others will be separate libraries that may even be used with other controls. But they are primarily intended to bring useful improvements to FlexGrid.

  • Rules Manager - An Excel-style UI extension to conditionally format FlexGrid at run time.
  • Transposed Grid - A FlexGrid extension that supports a grid where the rows and columns are transposed, so column headers run down the left side of the grid. In transposed grids, each item is represented by a column with rows that represent the item properties.
    Wijmo 2019 v3
  • CalcEngine - Based on the filter parsing engine used in our Expression Editor, the CalcEngine can parse and evaluate mathematical functions and formulas with variables and then compute the expressions just like Excel. The C1CalcEngine can be used to add Excel-like expression editing for cells in FlexGrid, or used separately with any UI controls to calculate the sales projections or statistical calculations to find patterns in data.
  • UI Automation Support

FlexPivot Enhancements

  • Top N Filters - sort and filter the pivot data to show the top N records. This is useful to filter out smaller sections of the data and add clarity to the analysis.
  • PivotChart Overhaul - replaced with the newer FlexChart control, with added support for axis grouping, context menus, add pie charts, and extended palettes

GanttView Enhancements

We plan to provide several enhancements and quality-of-life improvements to our WinForms GanttView control. These improvements will focus on extensibility and user interaction. For example:

  • More customization scenarios enabled including the task information dialog, task tooltips, displaying arbitrary text and embedding icons.
  • Easier to customize certain elements of the grid through the GanttView itself rather than controlling the internal FlexGrid.

WPF Support & Enhancements for 2020

For our WPF controls, we plan to continue .NET Core support in the .NET 4.5.2 libraries and release .NET 5 libraries for most of the controls by the end of 2020. The table below shows our level of support for each .NET Framework as of February 2020.

.NET Framework

Supports .NET Core
Supported in 2020
Supported after 2020
Will include new controls & features in 2020
.NET 4.0 No Yes Yes, until 2021 v3 No
.NET 4.5.2 Yes Yes Yes Yes
.NET 5 Yes Yet to be released Yes Yes

In addition to expanding support for .NET Core and .NET 5, the following UI enhancements are planned for WPF in 2020.

New DataFilter Control for WPF

The new DataFilter control for WPF is a combination of a slicer and intelligent filter UI. This control is based on the same in WinForms and lets users filter data based on multiple conditions. It can be bound to any data-aware like datagrids, lists, treeviews, charts, maps or with a model. The DataFilter could be used in dashboard applications to slice data from a familiar, e-commerce filter panel as you see on Amazon.

DataFilter control

New Filter Editor Control for WPF

Later in 2020, we'll be adding the new FilterEditor control from WinForms Edition to WPF Edition as well. With FilterEditor the end-user can fully customize multiple, nested condition filters at runtime using AND/OR. It can be used with any data-aware control like a grid, list or chart.

New Material Themes for WPF

Material Design has been well-received across multiple platforms, and its simple, flat, colorful design will soon be coming to WPF. Material themes (dark and light) are an easy method for modernizing the visual appearance of your apps.

OLAP for WPF pivot grid additions

  • Slicers - The WPF OLAP/Pivot controls will include a new slicer, which provides a quick way to edit filters applied to PivotField objects. With slicers, users can click buttons that quickly filter data based on values and indicates the current filtering state, making it even easier to understand what is shown in filtered PivotGrid and PivotChart controls.
  • Range Grouping - Grouping data by ranges is helpful when the report displays certain information by day, but users are often more interested in seeing the data for the whole month or quarter. The range grouping will allow them to achieve this with just a couple of clicks. Apart from the date, this is useful in number ranges and custom ranges.

ASP.NET MVC & Core Enhancements for 2020

New FileManager UI Control for ASP.NET MVC

A file manager control that integrates with Cloud Storage API’s for listing, downloading, uploading, deleting and moving files. This control lets you quickly build-in file management to any web app. For example, enable end-users to bring in a file from their Cloud Storage all within the browser.

FlexGrid Enhancements

  • Full-text Search - As users type into the new FlexGrid Search control, it filters the items based on the search text and automatically highlights the matches across all columns.

  • Transposed Grid Extension - In regular grids, each item is represented by a row with columns that represent the item properties. In transposed grids, each item is represented by a column with rows that represent the item properties.

Wijmo 2019 v3

  • Selector Column - a custom FlexGrid column that contains checkboxes and allows users to toggle the row selection. If there are any group header rows, their checkboxes show and toggle the selected state for all items in the group. An additional checkbox is added to the column header to toggle the selection for all the rows.
  • Pinned Columns - The FlexGrid always supported freezing rows and columns through code but did not expose a UI for controlling this feature. Pinning a column freezes or un-freezes it.
  • Multi-Column Sort - the column's allowSorting property will be changed from boolean to enumeration with a new option available for multi-column sorting. The way it works is by using the Ctrl key. Ctrl+Click removes the sort for a column and Ctrl+Shift+Click removes all sorts.

FlexChart Enhancements

  • Break Even Charts - When plotting costs and units, a break even chart visualize the break even point that represents how many units a business needs to sell to make up costs.

New Visitor Web API

The new .NET Core Visitor Web API collects user data such as IP, Geographical location, language, referring site, session, operating system, device, browser. It's useful for web developers to customize content for individual users.

Xamarin and Visual Studio for Mac

For Xamarin we plan to release a few significant new controls and enhancements. FlexViewer will get printing support, export support, dark & light themes, as well as outlines. We also plan to bring the Data Filter control to the Xamarin.Forms platform. This control is based on the same in WinForms and WPF, and it lets users filter data based on multiple conditions. It can be bound to any data-aware like datagrids, lists, treeviews, charts, or maps. The DataFilter could be used in mobile app drawer to slice data from a familiar, e-commerce filter panel as you see on Amazon

In early 2020 we will roll out an improved installer for Mac users and Visual Studio for Mac. This will allow developers on a Mac to easily install ComponentOne products such as Blazor, Xamarin, ASP.NET MVC, .NET Core and service components. Currently, we just have a dedicated installer for Xamarin. Later in the year, look forward to Visual Studio for Mac project templates and wizards.

Try ComponentOne Studio

Download the latest version of ComponentOne Studio Enterprise

Download Now!