The ComponentOne 2021 v3 release went live today. It includes support for .NET 6, Visual Studio 2022, the WinUI development platform, and more. We've been communicating our .NET 5 and .NET 6 support roll-out over the past two years, and today we are ecstatic to see the culmination of that work with the official release of .NET 6!
Microsoft has given .NET developers a true gift with the new, optimized development platform that bridges the gap between old and new—unifying the once complicated and uneven .NET family of frameworks.
Continue reading below to find out what's new in our ComponentOne 2021 v3 release. In addition to UI components and features for .NET 6, we are also committed to .NET Framework support for updating and improving your existing apps, now and for years to come.
New WinUI Edition
ComponentOne WinUI Edition is a native UI library for Windows desktop applications based on the WinUI3 framework. With WinUI Edition, now officially released, you get a:
- Powerful datagrid with superior cell customization and high-performance virtualization
- Essential calendar and layout controls that extend your application functionality
- Fluently-designed desktop controls for building the latest Windows applications
- Support for WinUI in Desktop apps only
From now until December 31, 2021, WinUI Edition is available for 50% off the introductory price for new developer licenses. Plus, WinUI is included with Studio Enterprise, so many users will receive the controls with their subscription.
This release has enhancements across .NET Framework 4.5.2+, .NET 5, and .NET 6 controls. The 2021 v3 release is the final release for new .NET 5 controls and features. We will support the platform for at least one more year, following Microsoft's lead. The migration from .NET 5 to .NET 6 is seamless and straightforward, so we do not see this limited support as an issue for many developers.
.NET 6 and Visual Studio 2022 Support
We have migrated all .NET 5 controls to .NET 6 and released .NET 6 versions of TrueDbGrid, GanttView, FontPicker, and Scheduler. The Print Preview family of controls (C1PrintDocument and C1PrintPreviewControl) are now out of beta. .NET 6 is the first LTS (long-term support) platform in Microsoft's larger plan. With that comes at least three years of support.
Visual Studio 2022 support includes toolbox, Tools add-on, and limited design-time support. The controls have been tested to work on the design surface, but not all designers from .NET Framework are supported in .NET 6.
FlexGrid for WinForms Enhancements
We've improved the design-time experience for FlexGrid in .NET Framework and Visual Studio 2019 with a new column bands designer. We've also introduced basic Visual Studio 2022 designer support for FlexGrid, including the smart tag. Now you can create multi-line rows and display selection statistics in the column footer using new samples.
FlexGrid Column Bands
Create column bands to group columns together. Organize your datagrid columns or visualize a hierarchical relation between columns. Create column bands quickly using the Visual Studio designer for .NET Framework.
FlexGrid Multi-line Rows
FlexGrid Selection Statistics
See how to display selection statistics in the column footers using our new FlexGrid for WinForms samples. This sample takes advantage of existing features and FlexGrid's flexible API to deliver a commonly requested feature like Microsoft Excel.
Specifically, it uses FlexGrid's aggregation functions like count, average, and sum to showcase the statistics when a range of cells is selected.
FlexChart for WinForms Enhancements
Improve the style and end-user functionality with FlexChart's new features and enhancements. FlexChart now supports more palette options that produce visually stunning graphs and charts that use smarter palettes to correlate better to ordered data. Provide your end-users with more chart configuration options by introducing our runtime toolbar.
FlexChart Extended Palettes
We now have more palette choices available in FlexChart. The palettes were inspired by ColorBrewer 2 and are grouped in the following categories:
- Sequential (Single and Multi): Best used to show ordered data that progress from low to highlight colors for low data values to dark colors for high data values
- Diverging: Gives equal emphasis to mid-range critical values and extremes at both ends–light colors for mid-range and dark colors for extreme low and high values
- Qualitative: Best used to show nominal or categorical data (Note: the color is not indicative of differences in values)
Runtime Chart Toolbar (Beta)
FlexChart now supports a runtime toolbar with common options like chart types, palettes, export, print, axis, and legend settings. This is the first version; later, we will expand this with ribbon support. The toolbars can be added using the control's smart tag at design-time.
FlexPivot Chart Enhancements
PivotChart Legend Grouping
The FlexPivot chart now supports grouping legends using LegendGroups property. This provides an additional context so that it is easier to compare data points. This feature is helpful when identifying the categories of data series in the case of multiple stacked series.
PivotChart ContextMenu and Extended Palettes
The FlexPivot chart now supports context menu configuration at runtime. Users can select different options from the context menu like changing the chart type, applying stacking, copying, choosing to show hide legends, titles, gridlines, etc. Customize the context menu to add custom menus.
The pivot chart also inherits the Extended Palettes from FlexChart (mentioned above) and can display chart data based on sequential, diverging, and qualitative options.
This release has enhancements across .NET Framework 4.5.2, .NET 5 and .NET 6 controls.
.NET 6 and Visual Studio 2022 Support
.NET 6 packages for all the previously released .NET 5 controls are available. In addition, we have released .NET 6 versions of Scheduler, MultiSelect, and ListView—a reworked version of C1ListBox with an updated, fluent design. Visual Studio 2022 support includes toolbox, Tools add-on, and newly-implemented Suggested Actions across the suite.
Open Suggested Actions by clicking the light bulb on the control at design-time. This gives you quick access to key properties and features, similar to how smart tags do in WinForms.
Not only can you set properties, but you can also perform more complex actions. For example, it requires extra XAML markup to implement the filter row on FlexGrid. By clicking the "Enable Filter Row" link, the XAML automatically generates for you.
WPF Control Enhancements
GanttView Export to Microsoft Project
Enable interoperability between your apps and Microsoft Project with new export options in ComponentOne GanttView for WPF. Users can save their views to the Open XML project file type using the new ExportToMSProjectXml method.
RichTextBox Export to Microsoft Word
Take your rich text documents to the most popular and versatile document type—DOCX. Check out the new sample that shows how to export documents from the C1RichTextBox control to Microsoft Word using the C1Word library.
FlexChart BreakEven Charts
FlexChart for WPF now supports BreakEven charts. Break-even analysis is used to calculate marginal costs. This technique is widely used by production management and management accountants.
More Docking and Floating Scenarios
Provide more control and limitation over which tabs and windows can be docked inside the ComponentOne DockControl. Now you can disable the floating and docking for any specific tab or window by setting the CanUserDock property.
TreeView On-Demand Loading
Display large lists of data in a tree hierarchy with C1TreeView. Check out the new sample that shows how to populate nodes on-demand—allowing you to optimize performance for extensive data lists.
In this release, we focused on adding drag-and-drop functionality across the Blazor suite of controls—ensuring the client-side behavior works well in both server and WebAssembly applications. We incorporated cross-platform DataFilter UI in Blazor for advanced Blazor datagrid and list view filtering.
New DataFilter Component
The DataFilter UI provides e-commerce-like filters to accompany any extensive data collection. Filtered data is easier to analyze and allows you to focus on specific information.
- Filter on criteria such as brand name, price, and time
- Connect to any data-aware controls such as datagrids, list, treeview, and charts
- Autogenerate the filter panel UI from the data source or create it manually
New Menu Component
Create complete menu systems using the new Menu control in Blazor. You can add deep nested, horizontal, or vertical menus to your application for easy navigation to different parts of your application. Utilize the template features to customize headers and items to provide a rich interface.
FlexGrid Column Reordering
Our Blazor FlexGrid now supports column and row reordering by drag-and-drop interactions. The AllowDragging property can be used to enable the movement of columns, rows, or both. Column reordering is enabled by default.
TreeView Node Reordering
The drag-and-drop functionality also extends to our Blazor TreeView component. Users may reorder nodes to any desired level by dragging and dropping. The AllowDragDrop property can be used to enable node reordering. This feature also supports event-driven dropping between two TreeViews using the OnDrag event handler.
FlexChart BreakEven Chart
FlexChart for Blazor now supports BreakEven charts. Break-even analysis is used to calculate marginal costs. This technique is widely used by production management and management accountants.
ASP.NET MVC Enhancements
FlexReport for ASP.NET Core 5.0/6.0
Now you can use the FlexViewer control and backend FlexReport Web API in ASP.NET Core 5/6 applications to render FlexReport, and SSRS reports. In a previous release, we had added PDF Web API to target the new .NET frameworks. Using the FlexViewer control, you can display FlexReports, ActiveReports, SSRS, and PDF.
Data Services Enhancements
The JSON ADO.NET and EntityFramework DataConnector are now ready for production use. With this release, apart from reading JSON data, the data connector supports creating, updating, and deleting these functions and should be used in combination with a configuration file that defines the structure of data.
In addition, the data connector is integrated with Visual Studio, which enables you to connect to JSON web service through Visual Studio Server Explorer, view JSON tables, and create queries using SQL or query builder. Drag-and-drop the JSON tables onto the dataset designer to add tables to the dataset and bind controls without writing a single line of code.
Special Time Series Functions
ComponentOne DataEngine now supports several useful time series functions:
- Ytd (year-to-date)
- Mtd (month-to-date)
- Qtd (quarter-to-date)
- Wtd (week-to-date)
These functions are useful in business calculations where period-to-date, time-based summaries need to be created. For example, the Qtd function could be used to generate the financial statement from the start of the quarter to a specific date. The functions can be applied to a range or filter expressions.
Make Your UI more "Data Aware" with the DataEngineCollection
ComponentOne DataEngine simplifies data operations between data-aware controls like a DataGridView and a DataEngine query. By binding to the query using the new C1DataEngineCollection, users can sort grid data by clicking on the column header, or filter the data as the user types a filter text in a textbox.